1.内置函数
就是Python给你提供的,拿来直接用的函数。
#作用域相关的
globals():返回一个字典,包含全部的全局变量。
locals():返回一个字典,包含的是当前作用域 所有的变量。
def func1(): a = 1 print(locals()) print(globals()) func1()
#其他相关
字符串类型代码的执行 eval,exec,complie
eval:执行字符串类型的代码,并返回最终结果。
s1 ='1+2+3' print(s1) s2 = "{'name':'alex'}" print(eval(s1),type(eval(s1))) print(eval(s2),type(eval(s2)))
exec:执行字符串类型的代码,不返回结果,代码流。
s1 ='1+2+3' s3='''for i in range(3): print(i) ''' print(exec(s1)) exec(s3)
complie:将字符串类型的代码编译。代码对象能够通过exec语句来执行或者eval()进行求值。
流程语句使用exec
codel = 'for i in range(0,10):print(i)' compile1 = compile(codel,'','exec') exec(compile1)
简单求值表达式用eval
code2 = '1+2+3+4' compile2 = compile(code2,'','eval') print(eval(compile2))
交换语句用single
code3 = 'name = input("please input your name:")' complie3 = compile(code3,'','single') # print(name) exec(complie3) print(name)
#输入输出相关
input print
input:函数接受一个标准输入数据,返回为 string 类型。
print:打印输出。
print(*[666,11,22,36]) print(1,2,3,4,sep='|')#打印多个内容是分隔符默认是空格 print(1,2,3,4,5,end='')#end=:默认换行 print(222)
#内存相关
hash:获取一个对象(可哈希对象:int,str,Bool,tuple)的哈希值。
dic = {'name':'alex','kfdshjfhdskjfhsd': '123'} print(hash('name')) print(hash('name1')) print(hash('kfdshjfhdskjfhsd')) print(hash(1)) print(hash(66)) print(hash(True)) print(hash(False)) print(hash([1,2,3]))
id:用于获取对象的内存地址
print(id('sda')) print(id([1313]))
#文件操作相关
open:函数用于打开一个文件,创建一个 file 对象,相关的方法才可以调用它进行读写。
#模块相关__import__
__import__:函数用于动态加载类和函数 。
#帮助
help:函数用于查看函数或模块用途的详细说明。
#调用相关
callable:函数用于检查一个对象是否是可调用的。如果返回True,object仍然可能调用失败;但如果返回False,调用对象ojbect绝对不会成功。
name = 'alex' def func1(): pass print(callable(name)) print(callable(func1))#可以被调用
#查看内置属性
dir:函数不带参数时,返回当前范围内的变量、方法和定义的类型列表;带参数时,返回参数的属性、方法列表。如果参数包含方法__dir__(),该方法将被调用。如果参数不包含__dir__(),该方法将最大限度地收集参数信息。
name = 'alex' print(dir(name))
#迭代器生成器相关
range:函数可创建一个整数对象,一般用在 for 循环中。
next:内部实际使用了__next__方法,返回迭代器的下一个项目。
it = iter([1,2,3,4,5]) while True: try: x = next(it) print(x) except StopIteration: break
iter:函数用来生成迭代器(讲一个可迭代对象,生成迭代器)。
from collections import Iterable from collections import Iterator l = [1,2,3] print(isinstance(l,Iterable)) print(isinstance(l,Iterator)) # l1 = iter(l) l1 = l.__iter__() print(isinstance(l1,Iterable)) print(isinstance(l1,Iterator))
#基础数据类型相关
数据类型:
1.bool :用于将给定参数转换为布尔类型,如果没有参数,返回 False。
print(bool('sdsadsa'))
2.int :函数用于将一个字符串或数字转换为整型。
print(int('11100',base=2))
3.float:函数用于将整数和字符串转换成浮点数。
print(type(3.14))
4.complex:函数用于创建一个值为 real + imag * j 的复数或者转化一个字符串或数为复数。如果第一个参数为字符串,则不需要指定第二个参数。
print(complex(1,2)) print(complex(1)) print(complex('12')) print(complex('1+2j'))
#进制转换
bin:将十进制转换成二进制并返回。
oct:将十进制转化成八进制字符串并返回。
hex:将十进制转化成十六进制字符串并返回。
print(bin(100),type(bin(10))) print(oct(10),type(oct(10))) print(hex(23),type(hex(23)))
#数学运算
abs:函数返回数字的绝对值
print(abs(-100))
divmod:计算除数与被除数的结果,返回一个包含商和余数的元组(a // b, a % b)。
print(divmod(12,7))
round:保留浮点数的小数位数,默认保留整数。
print(round(3.1546449,2))
pow:求x**y次幂。(三个参数为x**y的结果对z取余)
print(pow(2,4)) print(pow(2,5,3))
sum:对可迭代对象进行求和计算(可设置初始值)。
print(sum([1,2,3,5])) print(sum([1,5,6],102)) print(sum([i for i in range(101)]))
min:返回可迭代对象的最小值(可加key,key为函数名,通过函数的规则,返回最小值)。
print(min([1,2,3])) print(min([1,2,-2,-5])) print(min([1,2,-5,6,-4,4],key=abs)) m = [('alex',1000),('太白',18),('wusir',500)] def func(x): return x[1] func(m) print(min(m,key=func))
max:返回可迭代对象的最大值(可加key,key为函数名,通过函数的规则,返回最大值)
print(max([1,2,3])) print(max([1,2,-2,-5])) print(max([1,2,-5,6,-4,4],key=abs)) m = [('alex',1000),('太白',18),('wusir',500)] def func(x): return x[1] func(m) print(max(m,key=func))