python内置函数
- 1、 __import__
- 2、zip
- 3、abs
- 4、all
- 5、 any
- 6、callable
- 7、 chr 与 ord
- 8、 dir
- 9、 divmod
- 10、 eval
- 11、filter
- 12、bin、oct、hex
- 13、enumerate
- 14、format
- 15、frozenset
- 16、pow
- 17、round
- 18、reverse
- 19、reversed
- 20、slice
- 21、sorted
- 22、sum
1、 import
作用:导入模块
m = __import__('time') # import time
2、zip
zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表。
如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同,利用 * 号操作符,可以将元组解压为列表。
x = "hello"
y = [111, 222, 333]
res = zip(x, y)
print(list(res)) # [('h', 111), ('e', 222), ('l', 333)]
3、abs
取绝对值
print(abs(-10)) # 10
4、all
调用all函数,括号内应该放入一个可迭代对象
对于这个可迭代对象:
① 从中取出来的值,全真才是真,一假则为假
② 如果迭代器本身是空的,那结果为True
print(all([1, False, 'abc'])) # False
print(all([])) # True
5、 any
与all一样,括号内应该放入一个可迭代对象
① 从中取出来的值,全假才为假,一真则为真
② 如果迭代器本身是空的,那结果为False
print(any([1, False, 'abc'])) # True
print(any([])) # False
6、callable
判断函数是否可以被调用,返回布尔值
print(callable(len)) # True
7、 chr 与 ord
chr() 将十进制数转换成对应的ASCII字符
ord() 将字符转换成对应的ASCII十进制数
print(chr(101)) # e
print(ord('A')) # 65
8、 dir
查看传入的值 可以调用的内置属性(‘init’, ‘init_subclass’, ‘iter’, ‘le’, 'len’等)
print(dir('aaa'))
9、 divmod
传入除数和被除数,以元组的形式返回商和余数
res = divmod(10, 3)
print(res) # (3, 1)
10、 eval
eval() 函数用来执行一个字符串表达式,并返回表达式的值。
比如:可以用来将文件中存的字典形式的字符串反解成字典
msg = "print('hello world')"
eval(msg) # hello world
dic = eval("{'k1':111, 'k2':222,'k3':333}")
print(dic) # {'k1': 111, 'k2': 222, 'k3': 333}
11、filter
filter() 函数用于过滤序列,过滤掉不符合条件的元素,返回由符合条件元素组成的新列表。
该接收两个参数,第一个为函数,第二个为序列,序列的每个元素作为参数传递给函数进行判断,
然后返回 True 或 False,最后将返回 True 的元素放到新列表中。
语法:
filter(function, iterable) # 判断函数、可迭代对象
12、bin、oct、hex
bin() 将十进制数转化成二进制数
oct() 将十进制数转换成八进制数
hex() 将十进制数转换成十六进制数
13、enumerate
enumerate() 函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中。
返回元组形式的枚举对象,即(index,object) 索引+对象
Python 2.3. 以上版本可用,2.6 添加 start 参数。
语法:
enumerate(sequence, [start=0])
# sequence—— 一个序列、迭代器或者其他支持迭代对象
# start—— 下标起始位置
14、format
Python2.6 开始,新增了一种格式化字符串的函数 str.format(),它增强了字符串格式化的功能。
基本语法是通过 {} 和 : 来代替以前的 %占位符 。
format 函数可以接受不限个参数,位置可以不按顺序。
示例:
>>>"{} {}".format("hello", "world") # 不设置指定位置,按默认顺序
'hello world'
>>> "{0} {1}".format("hello", "world") # 设置指定位置
'hello world'
>>> "{1} {0} {1}".format("hello", "world") # 设置指定位置
'world hello world'
15、frozenset
frozenset() 返回一个冻结的集合,冻结后集合不能再添加或删除任何元素。
返回值:新的frozenset对象,如果不提供参数就生成空集合
语法:
class frozenset([iterable])
16、pow
pow() 方法返回 x^y(x 的 y 次方) 的值
语法:
>>> pow(2,3) # 返回3的2次方
8
>>> pow(3,2,5) # 3的2次方 对5取模
4
17、round
round(x, [y]) 返回浮点数x的四舍五入值,保留y位小数,不指定y就默认返回整数
>>> round(1.2) # 直接返回整数
1
>>> round(3.1415926, 2) # 返回两位小数
3.14
18、reverse
用于反向列表元素
没有返回值
l1 = [1, 2, 3, 4, 5]
l1.reverse()
print(l1) # [5, 4, 3, 2, 1]
19、reversed
得到一个反向的迭代器
for i in reversed('hello'):
print(i)
20、slice
slice() 函数实现切片对象,主要用在切片操作函数里的参数传递。
语法:
class slice(stop)
class slice(start, stop[, step]) # 起始位置,结束位置,步长
示例:
s = slice(1,4,2)
l1 = [1,2,3,4,5,6]
print(l1[s]) # [2,4]
21、sorted
sorted():对所有可迭代的对象进行排序操作(从小到大)。
返回列表
print(sorted('hello')) # ['e', 'h', 'l', 'l', 'o']
print(sorted({12, 4, 2})) # [2, 4, 12]
22、sum
对系列进行求和计算。
示例:
>>>sum([0,1,2])
3
>>> sum((2, 3, 4), 1) # 元组计算总和后再加 1
10
>>> sum([0,1,2,3,4], 2) # 列表计算总和后再加 2
12