python字符串操作

python编码与解码

别等时光非礼了梦想. 提交于 2020-02-12 04:10:13
基本概念 字符 :表示数据和信息的字母、数字或其他符号。在电子计算机中,每一个字符与一个二进制编码相对应。 字符的标识( 码位 ):是0-1114111的数字,在Unicode标准中以 4-6个十六进制数字 表示,而且加前缀“U+”。例如,字母A的码位是U+0041,欧元符号的码位是U+20AC. 字符的具体表述 取决于所用的编码。编码是在码位和字节序列之间转换时使用的算法。在UTF-8编码中,A(U+0041)的码位编码成单个字节\x41,而在UTF-16LE编码中编码成两个字节\x41\x00。欧元符号(U+20AC)在UFT-8编码中是三个字节\xe2\x82\xac,而在UTF-16LE编码中编码成两个字节\xac\x20。 编码 :把码位转换成字节序列(通俗来说:把字符串转换成用于存储或传输的字节序列,python中是.encode()) 解码 :把字节序列转换成码位(通俗来说:把字节序列转换成人类可读的文本字符串,python中是.decode()) >>> s = 'café' >>> len(s) # Unicode字符数量 4 >>> b = s.encode('utf8') # 编码为bytes >>> b b'caf\xc3\xa9' >>> len(b) # 字节数 5 >>> b.decode('utf8') # 解码 'café 字节概要

初见Python<6>:文件读写

青春壹個敷衍的年華 提交于 2020-02-12 01:20:57
1、open函数语法: python通过open函数打开文件,建立程序与文件之间的连接。 open函数语法:open(filename[,mode[,buffering]]) 其中filename是指要进行操作的文件名称,由文件名称和路径组成,需要加引号。 mode为操作模式参数,包括读、写、追加等。 buffering是缓冲参数,控制着文件的缓冲。当buffering=0或者False时,I/O就是无缓冲的,所有的读写操作都是直接针对硬盘的,如果是1或者True,I/O就是有缓冲的,python是用内存来代替硬盘,使得程序运行更快。大于1代表缓冲区的大小,单位为字节,-1或者其他任意负数代表使用默认的缓冲区大小。 只有filename参数是必须指定的,mode和buffering参数则是可选的,mode参数的缺省值为'r'。 2、参数mode的取值: (1)基本取值: r、w、a为打开文件的基本模式,分别表示只读、只写(覆盖写)、追加(追加写)。 b、t、+、U,与上面三个基本模式组合使用。 注意:文本模式用于打开文本文件,二进制模式用户打开二进制文件。 (2)常见的mode组合取值: (3)举例说明: 现在window系统PC机硬盘上存在文件G:\file1.txt,对其进行演示操作。 ①r模式: 报错的原因是路径中包含的'\'被识别为转义符,因此造成文件路径错误。

Python day 4

≯℡__Kan透↙ 提交于 2020-02-11 21:20:37
#字符串 1.定义字符串 ’ ’ ‘’ ‘’ ‘’’ ‘’’ “”" “”" 内置函数操作:len() 切片:print(s[0:9]) print(s.count(“天”)) 计数次数 # print(s1.isalpha()) 是否字母 # print(s1.upper().lower()) 大小写 # print(s.replace(“天”,“hi”,1)) 字符串中的 old(旧字符串) 替换成 new(新字符串),如果指定第三个参数max,则替换不超过 max 次 # print(s.join(s1)) 加入 # print(s.strip(’,’)) 移除字符串头尾指定的字符(默认为空格或换行符)或字符序列 # print(s.lstrip(’,’)) 截掉字符串左边的空格或指定字符 # print(s.rstrip(’,’)) 截掉字符串右边的空格或指定字符 # print(s.split(’,’)) 指定分隔符对字符串进行切片,如果参数 num 有指定值,则分隔 num+1 个子字符串 # print(s.encode(“utf-8”)) # print(s.encode(“gbk”)) # print(s.index(“天”)) 从列表中找出某个值第一个匹配项的索引位置。 # print(s.find(“真好”))检测字符串中是否包含子字符串 str ,如果指定

正则表达式

耗尽温柔 提交于 2020-02-11 18:38:36
正则表达式 首先注意一下,正则表达式效率上很多情况下不如str的内建函数,先列举一下我不太常用或者想不到的功能: 查找子字符串,存在返回索引值,不存在则分别返回-1和异常:string.find(str, beg=0, end=len(string)) s.rfind(’’) string.index(str, beg=0, end=len(string)) s.rindex(’’) 控制字符串或者子字符串开头结尾,返回True or False:string.startswith(obj, beg=0,end=len(string)) string.endswith() 返回 str 在 string 里面出现的次数:string.count(str, beg=0, end=len(string)) 如果 string 中只包含"",则返回True,否则返回False:string.isalpha() string.isalpha() string.isdigit() string.islower() string.isnumeric() string.isspace() string.isupper() 返回字符串 str 中最小的字母:max(str) min(str) 替换函数:string.replace(str1, str2, num=string.count(str1

python处理时间相关的方法(汇总)

南笙酒味 提交于 2020-02-11 12:12:14
记录python处理时间的模块:time模块、datetime模块和calendar模块。 python版本:2.7 在介绍模块之前,先说下以下几点: 1.时间通常有这几种表示方式:   a.时间戳:通常是从1970年1月1日00:00:00开始按秒计算的偏移量,如:1488520142.802   b.格式化的时间字符串:按指定的格式化字符来输出字符串形式的时间,如指定格式化字符为:'%Y-%m-%d %H:%M:%S',得到的时间字符串为:2017-03-03 13:51:34。格式化字符见图1.   c.以元组的形式表示,共9个元素。具体的元素见图2. 2.通用协调时UTC(Universal Time Coordinated)与格林尼治平均时GMT(Greenwich Mean Time)一样,都与英国伦敦的本地时间相同,是世界标准时间。中国为UTC+8      一、time模块 主要包含的函数: time()    ——  返回当前时间戳,浮点数形式,不接受参数。 gmtime()   ——  将时间戳转换为UTC时间,元组形式,接受一个浮点型时间戳参数,默认值为当前时间戳。 localtime()  ——  将时间戳转换为本地时间,元组形式,接受一个浮点型时间戳参数,默认值为当前时间戳。 ctime()    ——  将时间戳转换为指定的字符串形式

Python 字符串操作

我是研究僧i 提交于 2020-02-11 06:32:29
以下这些都是字符串 a = '''Tom''' print(a) print(type(a)) b = """Rose""" print(b) print(type(b)) #三引号支持换行输出 c = '''I am Tom, nice to meet you''' print(c) print(type(c)) d = 'i am' \ ' Tom' print(d) print(type(d)) 二.字符串查找 mystr = "hello python and it cast and come on China!" #1. find() : 检测某个子串是否包含在这个字符串中,如果在,返回这个子串开始的位置下标,如果不在,则返回-1 #语法:字符串序列.find(子串,开始位置下标,结束位置下标) #注意:开始和结束位置下标可以不写,表示查找整个字符串 #print(mystr.find('and')) #输出 13 #print(mystr.find('and', 15, 30)) #输出 25 #print(mystr.find('ands')) #输出-1,不存在 #2.index() : 检测某个子串是否包含在这个子串中,如果在,返回这个子串开始的位置下标,否则则报异常 #print(mystr.index('and')) #输出 13 #print(mystr

python基础面试集锦(1-50)

亡梦爱人 提交于 2020-02-10 18:16:28
目录 1、Python和Java、PHP、C、C#、C++等其他语言的对比 2、简述解释型语言和编译性语言? 3、Python解释器种类以及特点? 4 、位和字节的关系? 5、b、B、KB、MB、GB的关系? 6、一个字符不同编码对应的字节数? 7、PEP8编码规范? 8、or and 计算规则 9、求结果:or and 10、ASCII、unicode、utf-8、gbk区别? 11、字节码和机器编码的区别? 12、三元运算编写格式? 13、Python2和Python3的区别? 14、一行代码数值交换?交叉赋值 15、python2和python3中Int和long的区别? 16、xrange和range的区别? 17、字符串的反转序列?步长-1切 18、文件操作时:xreadlines和readlines的区别? 19、列举布尔值位false的常见值? 20、is和==的区别? 21、那些情况下,y!=x-(x-y)会成立? 22、现有字典dict = {'a':20,'b':25,'c':10,'d':50}请按字典中的value值进行排序? 23、如何将字典的键值互换? 24、字典和json的区别? 25、什么是可变、不可变类型? 26、存入字典里的数据有没有先后排序? 27、字典推导式? 28、描述一下dict的item()方法与iteritems()的不同? 29

Python 字符串

旧街凉风 提交于 2020-02-10 12:43:53
Python 字符串 字符串是 Python 中最常用的数据类型。我们可以使用引号('或")来创建字符串。 创建字符串很简单,只要为变量分配一个值即可。例如: var1 = 'Hello World!' var2 = "Python Runoob" Python 访问字符串中的值 Python 不支持单字符类型,单字符在 Python 中也是作为一个字符串使用。 Python 访问子字符串,可以使用方括号来截取字符串,如下实例: 实例(Python 2.0+) #!/usr/bin/python var1 = ' Hello World! ' var2 = " Python Runoob " print " var1[0]: " , var1 [ 0 ] print " var2[1:5]: " , var2 [ 1 : 5 ] 以上实例执行结果: var1[0]: H var2[1:5]: ytho Python 字符串连接 我们可以对字符串进行截取并与其他字符串进行连接,如下实例: 实例(Python 2.0+) #!/usr/bin/python # -*- coding: UTF-8 -*- var1 = ' Hello World! ' print " 输出 :- " , var1 [ : 6 ] + ' Runoob! ' 以上实例执行结果 输出 :- Hello

python 数据结构 - 字符串

核能气质少年 提交于 2020-02-09 18:19:30
字符串是 Python 中最常用的数据类型。我们可以使用单引号 ( '' ) 或双引号 ( " " ) 来创建字符串。 在python中,创建变量不需要指定类型,你在创建变量赋值时,python解释器会自动推断变量的数据类型 1 >>> s = 'abcde' 2 >>> type(s) 3 <class 'str'> #这里把多种数据类型的值赋值给s,python都能自动识别 4 >>> s = 123 5 >>> type(s) 6 <class 'int'> 7 >>> s = [1,2,'a',3] 8 >>> type(s) 9 <class 'list'> 10 >>> s = {'name':'root'} 11 >>> type(s) 12 <class 'dict'> 13 >>> s = {1,3,'a','abd'} 14 >>> type(s) 15 <class 'set'> 16 >>> #注意: 在python中,空字符串为假. eg: s = '' , if not s:print('hello') => hello 在python中,不支持单字符类型,python中的单字符也是作为字符串来处理 在python中,因为字符串是一个有序的序列,所以支持索引、切片等操作(用切片可以获取子串) 1 >>> s = 'a' 2 >>> type(s) 3

Python3 字符串

偶尔善良 提交于 2020-02-09 18:08:22
字符串是 Python 中最常用的数据类型。我们可以使用引号( ' 或 " )来创建字符串。 Python 不支持单字符类型,单字符在 Python 中也是作为一个字符串使用。 Python转义字符 在需要在字符中使用特殊字符时,python用反斜杠(\)转义字符。如下表: 转义字符 描述 \(在行尾时) 续行符 \\ 反斜杠符号 \' 单引号 \" 双引号 \a 响铃 \b 退格(Backspace) \e 转义 \000 空 \n 换行 \v 纵向制表符 \t 横向制表符 \r 回车 \f 换页 \oyy 八进制数,yy代表的字符,例如:\o12代表换行 \xyy 十六进制数,yy代表的字符,例如:\x0a代表换行 \other 其它的字符以普通格式输出 Python字符串运算符 下表实例变量a值为字符串 "Hello",b变量值为 "Python": 操作符 描述 实例 + 字符串连接 a + b 输出结果: HelloPython * 重复输出字符串 a*2 输出结果:HelloHello [] 通过索引获取字符串中字符 a[1] 输出结果 e [ : ] 截取字符串中的一部分,遵循 左闭右开 原则,str[0,2] 是不包含第 3 个字符的。 a[1:4] 输出结果 ell in 成员运算符 - 如果字符串中包含给定的字符返回 True 'H' in a 输出结果