python内置函数
print(locals()) #返回当前作用域的名字 print(globals()) #返回全局作用域的名字 print(eval('2+2')) # 执行字符串代码并返回一个结果 def func(): print(111) print(exec('func()')) # 执行字符串代码 code = 'for i in range(10): print(i)' c1 = compile(code,'', mode ='exec') exec(c1) # 将字符串类型的代码编译,代码对象能够通过exec执行,或者通过eval来求值
print(hash('df')) # 获取到对象的哈希值 def func(): print(1) print(callable(func)) # 判断一个对象是否是可调用的 lst1 = [1,2,3] lst2 = [4,5,6] lst3 = [7,8,9] for i in zip(lst1,lst2,lst3): print(i) # result: # (1, 4, 7) # (2, 5, 8) # (3, 6, 9) # 将可迭代对象作为参数,将对象中的元素一一对应打包成为元组 # lambad匿名函数 f = lambda n: n*n print(f(2)) # sorted排序函数 lst = ['111','2222','31113','44','66','55'] def func(s): return len(s) print(sorted(lst,key=func,reverse=True)) # result:['31113', '2222', '111', '44', '66', '55'] # 可以配合lambda使用 print(sorted(lst,key=lambda s: len(s),reverse=True)) # 结果是相同的 # filter筛选函数 lst1 = [1,2,3,4,5,6] print(filter(lambda n: n % 2 == 0,lst1).__next__()) # 返回一个生成器 # map映射函数 print(list(map(lambda x:x * x,lst1))) # 对迭代对象中的每一个元素进行映射,分别执行function返回生成器