内建函数
字符串
-
.endswith(suffix[, start[, end]])
- suffix -- 该参数可以是一个字符串或者是一个元素
- start -- 字符串中的开始位置
- end -- 字符中结束位置
-
.capitalize()
- 把字符串的第一个字符大写
-
.count(str, beg=0, end=len(string))
- 返回 str 在 string 里面出现的次数,beg 和 end 指定范围
-
.decode(encoding='UTF-8', errors='strict')
- 以 encoding 指定的编码格式解码 string
- 如果出错默认报一个 ValueError 的 异 常 , 除非 errors 指 定 的 是 'ignore' 或 者 'replace'
-
.encode(encoding='UTF-8', errors='strict')
- 以 encoding 指定的 编码格式编码 string
-
==.find(str, beg=0, end=len(string))==
- 检测 str 是否包含在 string 中
- 如果是返回开始的索引值,否则返回 -1
-
.isalnum()
- 检测字符串是否由字母和数字组成
-
.isalpha()
- 检测字符串是否只由字母组成
-
.isdigit()
- 检测字符串是否只由数字组成
-
==.join()==
- 将序列中的元素以指定的字符连接生成一个新的字符串
str.join(sequence)
- sequence -- 要连接的元素序列
_str = "-";seq = ("a", "b", "c"); # 字符串序列
print _str.join( seq );
-
.lstrip()
- 截掉字符串左边的指定字符(默认为空格)
str.lstrip([chars])
-
.rstrip()
- 删除字符串末尾的指定字符(默认为空格)
-
==.strip()==
- 移除字符串头尾指定的字符(默认为空格或换行符)或字符序列
-
==.split()==
- 通过指定分隔符对字符串进行切片,如果参数 num 有指定值 ,则分隔 num+1 个子字符串
- 返回分割后的字符串列表
str.split(str, num)
- str -- 分隔符,默认为所有的空字符,包括空格、换行 (\n)、制表符 (\t) 等。
- num -- 分割次数。默认为 string.count(str) , 即分隔所有。
str = "Line1-abcdef \nLine2-abc \nLine4-abcd";
print str.split( ); # 以空格为分隔符,包含 \n
print str.split(' ', 1 ); # 以空格为分隔符,分隔成两个输出
['Line1-abcdef', 'Line2-abc', 'Line4-abcd']
['Line1-abcdef', '\nLine2-abc \nLine4-abcd'] -
.upper()
将字符串中的小写字母转为大写字母
-
.lower()
转换字符串中所有大写字符为小写
-
.swapcase()
对字符串的大小写字母进行转换
-
==.replace(old, new[, max])==
替换字符
- old -- 将被替换的子字符串。
- new -- 新字符串,用于替换 old 子字符串。
- max -- 可选字符串, 替换不超过 max 次
-
.maketrans(intab, outtab)
创建字符映射的转换表
- intab -- 字符串中要替代的字符组成的字符串
- outtab -- 相应的映射字符的字符串
intab = "aeiou"
outtab = "12345"
trantab = str.maketrans(intab, outtab)
txt = "this is string example....wow!!!";
print(txt.translate(trantab))
# th3s 3s str3ng 2x1mpl2....w4w!!! -
partition(str)
- 根据指定的分隔符将字符串进行分割,不会将分隔符舍去
str = "www.runoob.com"
print str.partition(".")
# 输出
('www', '.', 'runoob.com') -
center(width, str)
- 返回一个原字符串居中,并使用空格填充至长度 width 的新字符串,默认填充空格
>>> str = 'runoob'
>>> str.center(20, '*')
'*******runoob*******'
>>> str.center(20)
' runoob '
其他
-
==enumerate()==
将一个可遍历的数据对象 (如列表、元组或字符串) 组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中
返回 enumerate (枚举) 对象。
enumerate(sequence, [start=0])
- sequence -- 一个序列、迭代器或其他支持迭代对象。
- start -- 下标起始位置。
seq = ['one', 'two', 'three']
for i, element in enumerate(seq):
print(i, element)输出
0 one
1 two
2 three -
dir()
不带参数时,返回当前范围内的变量、方法和定义的类型列表;
带参数时,返回参数的属性、方法列表
-
==map()==
根据提供的函数对指定序列做映射。
第一个参数 function 以参数序列中的 每一个元素调用 function 函数,返回包含每次 function 函数返回值的新列表。
map(function, iterable, ...)
返回迭代器,可用
list()
转换成列表 -
.format()
数字 | 格式 | 输出 | 描述 |
---|---|---|---|
3.1415926 | {:f} | 3.14 | 保留小数点后两位 |
3.1415926 | {:+f} | +3.14 | 带符号保留小数点后两位 |
-1 | {:+f} | -1.00 | 带符号保留小数点后两位 |
2.71828 | {:f} | 3 | 不带小数 |
5 | {:0>2d} | 05 | 数字补零 (填充左边, 宽度为 2) |
5 | {:x<4d} | 5xxx | 数字补 x (填充右边, 宽度为 4) |
10 | {:x<4d} | 10xx | 数字补 x (填充右边, 宽度为 4) |
1000000 | {:,} | 1,000,000 | 以逗号分隔的数字格式 |
0.25 | {:%} | 25.00% | 百分比格式 |
1000000000 | {:e} | 1.00e+09 | 指数记法 |
13 | {:>10d} | 13 | 右对齐 (默认, 宽度为 10) |
13 | {:<10d} | 13 | 左对齐 (宽度为 10) |
13 | {:^10d} | 13 | 中间对齐 (宽度为 10) |
11 | '{:b}'.format(11) '{:d}'.format(11) '{:o}'.format(11) '{:x}'.format(11) '{:#x}'.format(11) '{:#X}'.format(11) | 1011 11 13 b 0xb 0XB | 进制 |
-
eval(expression)
执行一个字符串表达式,并返回表达式的值
>>>x = 7
>>> eval( '3 * x' )
21
>>> eval('pow(2,2)')
4
>>> eval('2 + 2')
4
>>> n=81
>>> eval("n + 4")
85 -
bin(x)
- 将数字 x 转换为二进制串
-
chr(x)
- 返回 unicode 为 x 的字符
-
ord(x)
- 返回字符 x 的 unicode 编码
-
==filter(function, iterable)==
- 过滤掉不符合条件的元素,返回一个迭代器对象,如果要转换为列表,可以使用 list() 来转换
- function -- 判断函数,return bool
- iterable -- 可迭代对象。
- 过滤掉不符合条件的元素,返回一个迭代器对象,如果要转换为列表,可以使用 list() 来转换
-
==reduce(function, iterable)==
- 函数将一个数据集合(链表,元组等)中的所有数据进行下列操作:用传给 reduce 中的函数 function(有两个参数)先对集合中的第 1、2 个元素进行操作,得到的结果再与第三个数据用 function 函数运算,最后得到一个结果(即累积计算)
#!/usr/bin/python
from functools import reduce
def add(x, y) : # 两数相加
return x + y
sum1 = reduce(add, [1,2,3,4,5]) # 计算列表和:1+2+3+4+5
sum2 = reduce(lambda x, y: x+y, [1,2,3,4,5]) # 使用 lambda 匿名函数
print(sum1)
print(sum2) -
round(x [, n])
- 返回浮点数 x 的四舍五入值
- x -- 数值表达式。
- n -- 数值表达式,表示从小数点位数。
-
==zip([iterable, ...])==
- 将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表
- iterabl -- 一个或多个迭代器
- 返回元组列表
>>> a = [1,2,3]
>>> b = [4,5,6]
>>> c = [4,5,6,7,8]
>>> zipped = zip(a,b) # 打包为元组的列表
[(1, 4), (2, 5), (3, 6)]
>>> zip(a,c) # 元素个数与最短的列表一致
[(1, 4), (2, 5), (3, 6)]
>>> zip(*zipped) # 与 zip 相反,*zipped 可理解为解压,返回二维矩阵式
[(1, 2, 3), (4, 5, 6)] -
locals()
- 返回当前作用域内所有局部变量和值的字典
-
globals()
- 返回当前作用域内所有全局变量和值的字典