Python 内建函数
内建函数
字符串
.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 – 要连接的元素序列
1 2
_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) , 即分隔所有。
1 2 3
str = "Line1-abcdef \nLine2-abc \nLine4-abcd"; print str.split( ); # 以空格为分隔符,包含 \n print str.split(' ', 1 ); # 以空格为分隔符,分隔成两个
输出
1 2
['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 – 相应的映射字符的字符串
1 2 3 4 5 6 7 8
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)
- 根据指定的分隔符将字符串进行分割,不会将分隔符舍去
1 2 3 4 5 6
str = "www.runoob.com" print str.partition(".") # 输出 ('www', '.', 'runoob.com')
center(width, str)
- 返回一个原字符串居中,并使用空格填充至长度 width 的新字符串,默认填充空格
1 2 3 4 5
>>> str = 'runoob' >>> str.center(20, '*') '*******runoob*******' >>> str.center(20) ' runoob '
其他
==enumerate()==
将一个可遍历的数据对象 (如列表、元组或字符串) 组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中
返回 enumerate (枚举) 对象。
enumerate(sequence, [start=0])
- sequence – 一个序列、迭代器或其他支持迭代对象。
- start – 下标起始位置。
1 2 3
seq = ['one', 'two', 'three'] for i, element in enumerate(seq): print(i, element)
输出
1 2 3
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)
执行一个字符串表达式,并返回表达式的值
1 2 3 4 5 6 7 8 9 10
>>>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 函数运算,最后得到一个结果(即累积计算)
1 2 3 4 5 6 7 8 9
#!/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 – 一个或多个迭代器
- 返回元组列表
1 2 3 4 5 6 7 8 9
>>> 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()
- 返回当前作用域内所有全局变量和值的字典