详情 https://docs.python.org/3/library/functions.html?highlight=built#ascii
1. abs() 取绝对值
2. all() 如果可迭代对象的所有元素的布尔值都是True,返回True。如果该可迭代对象为空,返回True
print(all([1, 2, 3, 'hello'])) print(all([1, 2, 3, 'hello', 0])) print(all('1230')) print(all('')) True False True True
3. any() 如果可迭代对象的元素的至少有元素的布尔值是True,返回True。
4. bin() 十进制转化为二进制
5. bool() 计算布尔值(None,0,空的布尔值为False)
6. bytes() 编码
print(bytes('你好', encoding='utf-8')) print(bytes('你好', encoding='utf-8').decode('gbk')) b'xe4xbdxa0xe5xa5xbd' 浣犲ソ
7. chr() 把ascii码转换为对应字符
print(chr(97)) a
8. eval() 把字符串中的数据结构提取出来
express = '1+(3/2-1)' print(eval(express)) 1.5
9. hash() 获取hash值 # 可hash的数据类型即不可变的数据类型,不可hash的数据类型即可变的数据类型
10. hex() 十进制转十六进制
11. oct() 十进制转八进制
12. globals() 显示全局变量
13. locals() 显示局部变量
14. isinstance() 判断对象是否是指定的数据类型
print(isinstance(12, int)) True
15. max() 取最大值
- max函数处理的是可迭代对象,相当于一个for循环取出每个元素进行比较 # 不同类型之间不能进行比较
- 每个元素之间进行的比较是从每个元素第一个位置开始依次比较,如果这一位置分出大小,后面的就不需要比较了
l1 = ['a10', 'a2', 'c12'] l2 = [ (5, 'a'), (2, 'c'), (3, 'f') ] print(max(l1)) # 从元素的第一个字符开始比较 print(max(l2)) 运行结果: c12 (5, 'a') age_dic = { 'age1': 18, 'age2': 100, 'age3': 30, 'age4': 50 } print(max(age_dic)) # 比较的是key print(max(age_dic.values())) # 比较的是value,但不知道是哪个key对应的。 print(max(zip(age_dic.values(), age_dic.keys()))) # 结合zip print(max(age_dic,key=lambda key: age_dic[key]) 运行结果: age4 100 (100, 'age2') age2 age_list = [ {'name': 'Tom', 'age': 18}, {'name': 'alex', 'age': 100}, {'name': 'Jerry', 'age': 30} ] print(max(age_list, key=lambda dic: dic['age'])) 运行结果: {'name': 'alex', 'age': 100}
16. min() 取最小值,同max()
17. zip() 接收两个序列,形成一个新的序列
print(list(zip(('a', 'b', 'c'), (1, 2, 3)))) p = {'a': 1, 'b': 2, 'c': 3} print(list(zip(p.keys(), p.values()))) [('a', 1), ('b', 2), ('c', 3)] [('a', 1), ('b', 2), ('c', 3)]
18. ord() 将字符转化为ascii码
19. pow()
print(pow(3, 5)) # 相当于3**5 print(pow(3, 5, 2)) # 相当于3**5%2 243 1
20. reverse() 反转
l = [1, 2, 3, 4] print(list(reversed(l))) [4, 3, 2, 1]
21. round() 四舍五入
22. slice() 切片
mstr = 'hello' s = slice(1, 4, 2) print(mstr[s]) # 等同于mstr[1,4,2] el
23. sorted() 排序
age_dic = { 'age1': 18, 'age2': 100, 'age3': 30, 'age4': 50 } print(sorted(zip(age_dic.values(), age_dic.keys()))) print(sorted(age_dic, key=lambda key: age_dic[key])) [(18, 'age1'), (30, 'age3'), (50, 'age4'), (100, 'age2')] ['age1', 'age3', 'age4', 'age2']
age_list = [ {'name': 'Tom', 'age': 18}, {'name': 'alex', 'age': 100}, {'name': 'Jerry', 'age': 30} ] print(sorted(age_list, key=lambda dic: dic['age'])) [{'name': 'Tom', 'age': 18}, {'name': 'Jerry', 'age': 30}, {'name': 'alex', 'age': 100}]
24. sum() 求和
25. type() 查看数据类型
26. vars() 如果没有参数,等同于local();如果有一个参数,以字典的形式返回该参数的所有方法
def test(): msg = 'dhfjjfksub' print(vars()) print(locals()) print(vars(int)) test() {'msg': 'dhfjjfksub'} {'msg': 'dhfjjfksub'} {'__repr__': <slot wrapper '__repr__' of 'int' objects>, '__hash__': <slot wrapper.............}
27.iter() 将一个可迭代对象转换为迭代器
l = ['a', 'b', 'c', 'd', 'e'] def test(): return l.pop() x = iter(test, 'b') # 迭代到'b'停止 print(next(x)) print(next(x)) print(next(x)) print(next(x))