访问子串
1 #!/usr/bin/python 2 3 str = ‘Hello World‘ 4 print(str[0:5]
字符串追加
1 #!/usr/bin/python 2 print(‘Hello ‘ + ‘world‘)
转义字符
转义字符 | 描述 |
\(行尾) | 续行符 |
\\ | 反斜杠符号 |
\‘ | 单引号 |
\" | 双引号 |
\a | 响铃 |
\b | 退格 |
\e | 转义 |
\000 | 空 |
\n | 换行符 |
\v | 纵向制表符 |
\t | 横向制表符 |
\r | 回车 |
\f | 换页 |
\oyy | 八进制数,yy代表的字符 |
\xyy | 十六进制数,yy代表的字符 |
\other | 其他的字符以普通格式输出 |
字符串运算符
操作符 | 描述 |
+ | 字符串连接 |
* | 重复输出字符串 |
[] | 通过索引获取字符串中字符 |
[:] | 截取字符串中的一部分 |
in | 成员运算符,如果字符串中包含给定的字符则返回True |
not in | 成员运算符,如果字符串中不包含给定的字符则返回True |
r/R | 原始字符串,所有的字符串都是直接按照字面的意思来使用,没有转义特殊或不能打印的字符 |
% | 格式字符串 |
字符串格式化符号
符号 | 描述 |
%c | 格式化字符及其ASCII码 |
%s | 格式化字符串 |
%d | 格式化整数 |
%u | 格式化无符号整数 |
%o | 格式化无符号八进制数 |
%x | 格式化无符号十六进制数 |
%X | 格式化无符号十六进制数(大写) |
%f | 格式化浮点数字,可指定小数点后的精度 |
%e | 用科学计数法格式化浮点数 |
%E | 用科学计数法格式化浮点数 |
%g | %f和%e的简写 |
%G |
%f和%E的简写 |
%p |
用十六进制数格式化变量的地址 |
* |
定义宽度或者小数点精度 |
- | 用做左对齐 |
+ | 在正数前面显示加号 |
<sp> | 在正数前面显示空格 |
# | 在八进制数前面显示零,在十六进制前面显示‘0x‘或者‘0X‘ |
0 | 显示的数字前面填充0而不是默认的空格 |
% | 输出一个单一的% |
(var) | 映射变量 |
m.n. | m是显示的最小总宽度,n是小数点后的位数 |
Unicode字符串
使用u‘‘来定义Unicode字符串
内建函数
方法 | 描述 |
string.capitalize() | 把字符串的第一个字符大写 |
string.center(width) | 返回一个原字符串居中,并使用空格填充至长度width的新字符串 |
string.count(str,beg=0,end=len(string)) | 返回str在string里面出现的次数,如果beg或者end指定,则返回指定范围内str出现的次数 |
string.decode(encoding=‘UTF-8‘,errors=‘strict‘) | 以encoding指定的编码格式解码string,如果出错默认报一个ValueError的异常,除非errors指定的是ignore或者replace |
string.encode(encoding=‘UTF-8‘,errors=‘strict‘) | 以encoding指定的编码格式编码string,如果出错默认报一个ValueError的异常,除非errors指定的是ignore或者replace |
string.endswith(obj,beg=0,end=len(string)) | 检查字符串是否以obj结束,如果beg或者end指定则检查指定范围内是否已obj结束,如果是,返回True,否则返回False |
string.expandtabs(tabsize=8) | 把字符串string中的tab符号转为空格,tab符号默认的空格数是8 |
string.find(str,beg=0,end=len(string)) | 检测str是否包含在string中,如果beg和end指定范围,则检查是否包含在指定范围内,如果是返回开始的索引值,否则返回-1 |
string.format | 格式化字符串 |
string.index(str,beg=0,end=len(string)) | 跟find()方法一样,只不过如果str不在string中,会报一个异常 |
string.isalnum() | 如果string至少有一个字符并且所有字符都是字母或数字,则返回True,否则返回False |
string.isalpha() | 如果string至少有一个字符并且所有字符都是字母则返回True,否则返回False |
string.isdecimal() | 如果string只包含十进制数字则返回True,否则返回False |
string.isdigit() | 如果string只包含数字则返回True,否则返回False |
string.islower() | 如果string中包含至少一个区分大小写的字符,并且所有这些字符都是小写,则返回True,否则返回False |
string.isnumeric() | 如果string中只包含数字字符,则返回True,否则返回False |
string.isspace() | 如果string中只包含空格,则返回True,否则返回False |
string.istitle() | 如果string是标题化的,则返回True,否则返回False |
string.isupper() | 如果string中包含至少一个区分大小写的字符,并且所有这些字符都是大写,则返回True,否则返回False |
string.join(seq) | 以string作为分隔符,将seq中所有的元素合并为一个新的字符串 |
string.ljust(width) | 返回一个原字符串左对齐,并使用空格填充至长度width的新字符串 |
string.lower() | 转换string中所有大写字符为小写 |
string.lstrip() | 截掉string左边的空格 |
string.maketrans(intab[,outtab]) | 创建字符映射的转换表,对于接受两个参数的最简单的调用方式,第一个参数是字符串,表示需要转换的字符,第二个参数也是字符串,表示转换的目标 |
max(str) | 返回字符串str中最大的字母 |
min(str) | 返回字符串str中最小的字母 |
string.partition(str) | 从str出现的第一个位置起,把字符串string分成一个三元素的元组(string_pre_str,str,string_post_str),如果string中不包含str,则string_pre_str == string |
string.replace(str1,str2,number=string.count(str1)) | 把string中的str1替换成str2,如果num指定,则替换不超过num次 |
string.rfind(str,beg=0,end=len(string)) | 类似于find()函数,不过是从右边开始查找 |
string.rindex(str,beg=0,end=len(string)) | 类似于index(),不过是从右边开始 |
string.rjust(width) | 返回一个原字符串右对齐,并使用空格填充至长度width的新字符串 |
string.rpartition(str) | 类似于partition()函数,不过是从右边开始查找 |
string.rstrip() | 删除string字符串末尾的空格 |
string.split(str="",num=string.count(str)) | 以str为分隔符切片string,如果num有指定值,则仅分隔num个字符串 |
string.splitlines([keepends]) | 按照行(‘\r‘,‘\r\n‘,‘\n‘)分隔,返回一个包含隔行作为元素的列表,如果参数keepends为False,不包含换行符,如果为True,则保留换行符 |
string.startswith(obj,beg=0,end=len(string)) | 检查字符串是否是以obj开头,是则返回True,否则返回False。如果beg和end指定值,则在指定范围内检查 |
string.strip([obj]) | 在string上执行lstrip()和rstrip() |
string.swapcase() | 翻转string中的大小写 |
string.title() | 返回标题化的string,就是说所有单词都是以大写开始,其余字母均为小写 |
string.translate(str,del="") | 根据str给出的表转换string的字符,要过滤掉的字符放到del参数中 |
string.upper() | 转换string中的大小写为大写 |
string.zfill(width) | 返回长度为width的字符串,原字符串string右对齐,前面填充0 |
string.isdecimal() | 检查字符串是否只包含十进制字符。这种方法只存在于Unicode对象。 |