7.9 内置函数
# 1. bytes() unicode ->utf-8/gbk
print('中文'.encode('utf-8')) #解码成utf-8
bytes('中文','utf-8')
b'\xe4\xb8\xad\xe6\x96\x87'
b'\xe4\xb8\xad\xe6\x96\x87'
# 2. chr()/ord() ASCII码对应关系
print(chr(97)) #ASCII码->字符
print(ord('a')) #字符->ASCII码
a
97
# 3. divmpd(x,y) 求x//y,x%y 结果以元组方式返回
print(divmod(10,3))
(3, 1)
# 4. enumerate()
lis=['a','b','c']
for i in enumerate(lis):
print(i)
#可以写功能菜单
def f1():
print('from f1')
def f2():
print('from f2')
fun_lis=[f1,f2]
for ind,val in enumerate(fun_lis):
print(ind,val)
print(ind,val.__name__) #打印函数名字
(0, 'a')
(1, 'b')
(2, 'c')
0 <function f1 at 0x0000018FB31DF240>
0 f1
1 <function f2 at 0x0000018FB31DF560>
1 f2
# 5. eval() 去掉字符串的引号,然后它原本是什么数据类型就是什么数据类型,可能用的多
# 从文件中读取出列表'[1,2,3,4,2]',转换为list类型
lis_str='[1,2,3,4,2]'
print(list(lis_str)) #不能这样转换
print(eval(lis_str),type(eval(lis_str)))
['[', '1', ',', '2', ',', '3', ',', '4', ',', '2', ']']
[1, 2, 3, 4, 2] <class 'list'>
# 6. hash() 可哈希不可变,不可哈希可变
# 不可变类型:整型,浮点型,字符型
# 可变类型:列表、字典、集合
hash(1)
hash('dsfg')
-5606248296876557596
# 1. abs 绝对值
print(abs(-100))
100
# 2. all() 括号内可迭代对象所有元素为真则返回一个真,相当于'与'
print(all(['c',5,6,8]))
print(all(['c',5,6,8,False]))
True
False
# 3. any () ,全为假返回False,相当于'或'
print(any(['c',5,6,8,False]))
True
# 4. bin/oct/hex 二进制/八进制/十六进制
print(bin(888))
print(oct(888))
print(hex(888))
0b1101111000
0o1570
0x378
# 5. dir() 把所有模块方法读出来
import time
# print(dir(time))
# 6. frozenset 不可更改集合
s=frozenset({1,2,3,4})
# 7. globals()/locals() 打印全局变量/局部变量
# print(globals())
# print(locals())
# 8. pow()
print(pow(3,2,3)) #(3**2)%3
0
# 9. round() 四舍五入
print(round(3.5))
4
# 10. sum() 括号内传入可迭代对象
print(sum([1,2,3,4]))
10
#11. __import__()方法
# import time
time=__import__('time')
print(1)
time.sleep(2)
print(2)
1
2