day4-内置函数
内置函数概览

官方详细地址:猛击这里
常用内置函数
1.abs()
用法:取绝对值
>>>print(abs(-1)) -1
2.all()
用法:在可迭代的所有元素都是True返回True,空也返回True,非0为真,0为假
>>>print(all([1,-1,2,5])) True >>>print(all([])) True >>>print(all([0,1,-1,2,5])) False
3.any()
用法:如果可迭代里任意元素是True返回True,空返回False
>>>print(any([0,1,2])) True >>>print(any([])) False
4.ascii()
用法:把内存对象转换成一个可打印的字符串
>>>a=ascii([1,2,"dick"]) >>>print(type(a),[a]) <class 'str'> ["[1, 2, 'dick']"]
5.bin()
用法:将数字十进制转二进制
>>> bin(1) '0b1' >>> bin(255) '0b11111111'
6.bool()用法:返回布尔值
>>> bool(1) True >>> bool(0) False
7.bytes()
用法:把字符串转换为字节
>>>a=bytes("abcde",encoding="utf-8")
>>>print(a.capitalize(),a)
b'Abcde' b'abcde'
a = bytes("abcde",encoding="utf-8")
b = bytearray("abcde",encoding="utf-8")
print(a.capitalize(),a)
print(b[0])
#输出
97
bytearray(b'a\xc8cde')
8.callable()
用法:检查对象是否可调用
>>>callable(1) False
9.chr()
用法:把数字对应的ascii码输出
>>> chr(98) 'b' >>> chr(100) 'd'
10.ord():
用法:把ascii码对应的数字输出
>>> ord("d")
100
11.compile()
用法:将代码编译可以被exec()或eval()执行
>>> code = "for i in range(10):print(i)" >>> compile(code,"","exec") <code object <module> at 0x105440ae0, file "", line 1> >>> exec(code) 0 1 2 3 4 5 6 7 8 9 >>> code = "2+6*7-9" >>> compile(code,"","eval") <code object <module> at 0x1054828a0, file "", line 1> >>> eval(code) 35
12.dir()
用法:查看对象有哪些方法
>>> a = [] >>> dir(a) ['__add__', '__class__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__gt__', '__hash__', '__iadd__', '__imul__', '__init__', '__iter__', '__le__', '__len__', '__lt__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__rmul__', '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook__', 'append', 'clear', 'copy', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort']
13.divmod()
用法:求商和余数
>>> divmod(5,2) (2, 1)
14.dict()
用法:生成字典
>>> dict()
{}
15.enumerate()
用法:返回一个enumerate类型,参数一般是可以遍历的东西,比如列表或字符串
>>>seasons=["spring","summer","fall","winter"] >>>list(enumerate(seasons)) [(0, 'spring'), (1, 'summer'), (2, 'fall'), (3, 'winter')]
16.eval()
用法:把字典类型的字符串变成字典,把一个整数类型的字符变成int类型,或者加减乘除这种转换成表达式
>>> x=1
>>> eval("x+3") #字符串转换为表达式
4
17.exec()
用法:有语句的和复杂的语句的字符串转换成表达式
>>> x=1
>>> exec("x+3") #字符串转换为表达式
4
18.filter(function,iterable)
用法:通过function过滤条件,去获取iterable中你想要的数据
>>>a=filter(lambda n:n>5,range(10))
>>>a
<filter object at 0x0000000003093BE0> #得到一个迭代器
>>>for i in a:
print(i)
6
7
8
9
19.map(function,iterable)
用法:把后面的值拿出来交给前面处理,处理完再返回一个列表
a=map(lambda n:n*5,range(10)) #[lambda i:i*5 for i in range(10)] ##[i*5 for i in range(10)] 一样的效果
for i in a:
print(i)
#输出
0
5
10
15
20
25
30
35
40
45
>>> [i*2 for i in range(10)]
[0, 2, 4, 6, 8, 10, 12, 14, 16, 18]
20.reduce(function,iterable)
用法:把一组可迭代的序列通过function函数操作,元素之间相加或相乘操作。
import functools res=functools.reduce(lambdax,y:x+y,range(10)) #从零加到9 print(res) #输出 45
21.frozenset()
用法:把集合变成一个不可变集合
a=frozenset([11,22,3,34,55,66,1,1,11])
22.globals()
用法:返回当前程序里所有得变量字典格式key-value,变量是key,值是value
print(globals())
23.hash()
用法:返回该对象对应的hash值
>>> hash("dick")
-5772896519524564086
24.hex()
用法:把一个数字转成16进制
>>> hex(11) '0xb'
25.id()
用法:返回内存地址
>>> id(1) 4297546560
26.locals()
用法:打印局部变量
def test():
locals_var = 333
print(locals()) #只打印局部变量
test()
print(globals().get("locals_var")) #只能打印全局变量
#输出
{'locals_var': 333}
None
27.oct()
用法:转八进制--逢八进一
>>> oct(9) '0o11'
28.pow()
用法:几的次方
>>> pow(3,5) 243
29.sorted()
用法:对序列排序
>>> sorted([5,3,2,6,8])
[2, 3, 5, 6, 8]
>>> a = {1:5,6:8,3:6}
>>> sorted(a) #默认是按key排序
[1, 3, 6]
>>> sorted(a.items()) #按key排序
[(1, 5), (3, 6), (6, 8)]
>>> sorted(a.items(),key = lambda x:x[1]) #按value排序
[(1, 5), (3, 6), (6, 8)]
30.zip()
用法:按最少的拼
a=[1,2,3,4]
b=["a","b","c","d"]
for i in zip(a,b):
print(i)
#输出
(1, 'a')
(2, 'b')
(3, 'c')
(4, 'd')

浙公网安备 33010602011771号