1 序列
1.1 序列类型操作符
序列操作符 |
作用 |
seq[ind] |
获得下标为ind的元素 |
seq[ind1:ind2] |
获得下标从ind1到ind2之间的元素 |
seq*expr |
序列重复expr次 |
seq1 + seq2 |
连接序列seq1和seq2 |
objinseq |
判断obj元素是否包含在seq中 |
objnotinseq |
判断obj元素是否不包含在seq中 |
1.2 内建函数
函数 |
含义 |
list(iter) |
把可迭代对象转换为列表 |
str(obj) |
把obj对象转换成字符串 |
tuple(iter) |
把一个可迭代对象转换成一个元组对象 |
len(seq) |
返回seq的长度 |
max(iter, key=None) |
返回iter中的最大值 |
enumerate |
接受一个可迭代对象作为参数,返回一个enumerate对象 |
reversed(seq) |
接受一个序列作为参数,返回一个以逆序访问的迭代器 |
sorted(iter) |
接受一个可迭代对象作为参数,返回一个有序的列表 |
字符串
2.1 字符串操作符
- 比较操作符:字符串大小按照ASCII码值大小进行比较
- 切片操作符:
[]
、[:]
、[::]
- 成员关系操作符:
in
、not in
2.2 格式化操作符
格式化字符 |
转换方式 |
%c |
转换成字符 |
%s |
优先用str()函数进行字符串转换 |
%d / %i |
转成有符号十进制数 |
%o |
转成无符号八进制数 |
%e / %E |
转成科学计数法 |
%f / %F |
转成浮点数 |
格式化操作符辅助指令 |
作用 |
* |
定义宽度或者小数点精度 |
- |
左对齐 |
+ |
在正数前面显示加号 |
|
在正数前面显示空格 |
# |
在八进制数前面显示0,在十六进制前面显示'0x'或'x0' |
0 |
显示的数值前面填充0而不是默认的空格 |
2.3 字符串模板
-
string模块
提供了一个Template对象
,利用该对象可以实现字符串模板功能
>>> import string
>>> origTxt = "Hi ${name}, I will see you ${day}"
>>> t = string.Template(origTxt)
>>> t.substitute(name='oyk', day='tomorrow')
'Hi oyk, I will see you tomorrow'
>>>
2.4 原始字符串操作符
-
原始字符串操作符
是为了对付那些在字符串中出现的特殊字符
- 在原始字符串里,所有的字符都是直接按照字面的意思来使用,没有转移特殊或者打印的字符
2.5 内建函数
-
string.capitalize()
:把字符串的第一个字符大写
-
string.center(width)
:返回一个元字符串居中,并使用空格填充至长度width的新字符串
-
string.count(str, beg=0, end=len(string))
:返回str在string里面出现的次数,如果beg或者end指定则返回指定范围内str出现的次数
-
string.endswith(obj, beg=0, end=len(string))
:检查字符串是否以obj结束,如果beg或者end指定则检查指定的范围内是否以obj节结束,如果是,返回True,否则返回False
-
string.islower()
:如果string中包含至少一个区分大小写的字符,并且所有这些字符都市小写,则返回True,否则返回False
-
string.strip()
:删除string字符串两端的空白
-
string.upper()
:转换string中的小写字母为大写
-
string.split(str="", num=string.count(str))
:以str为分隔符切片string,如果num有指定值,则仅分隔num个子字符串