day4-内置函数
一、内置函数表格
1、表格
2、详细文档地址:猛击这里
二、内置函数详情
1、abs(x)
功能:取数的绝对值
>>> abs(-1) #取-1的绝对值 1
2、all(iterable)
功能:如果这个可迭代的元素都为真,则返回真(非0的就为真,负数也是为真)
>>> all([0,1,3]) #有0,说明为假 False >>> all([1,-5,6]) #负数也是为真 True
3、any(iterable)
功能:可迭代的元素中,有一个为真,则返回真,空列表返回假。
>>> any([0,1,2]) #有一个为真,则为真 True >>> any([]) #空列表为假 False
4、ascii(object)
功能:把内存对象变成一个可打印的字符串格式
>>> ascii([1,2,3,4]) '[1, 2, 3, 4]'
5、bin(x)
功能:把一个整数转换成二进制
>>> bin(300) #把300转换成二进制 '0b100101100' >>> bin(1) '0b1'
6、bool([x])
功能:返回一个布尔值,空列表为假,不为空为真
>>> bool([]) #空列表 False >>> bool([1,2]) #不为空列表 True >>> bool([0]) True
7、bytearray[source[, encoding[, errors]]]
功能:字节数组,并且可以修改二进制的字节
>>> b = bytearray("abcd",encoding="utf-8") #声明一个字节数组 >>> b[0] #打印第一个元素的ascii值,也就是'a'对应的ascii值 97 >>> b[0] = 100 #修改时,只能赋值对应字符的ascii值 >>> b bytearray(b'dbcd') #发现字节数组值被修改
8、bytes([source[, encoding[, errors]]])
功能:把字符串转换成字节
>>> b = bytes("abcd",encoding="utf-8") #声明字节 >>> b b'abcd' >>> b[0] #访问到'a'字符对应的ASCII值 97 >>> b[0]=100 #不可以修改里面的值,不然会报错 Traceback (most recent call last): File "<input>", line 1, in <module> TypeError: 'bytes' object does not support item assignment
9、callable(object)
功能:判断一个对象是否可以被调用,只有在后面有括号的,表示可以调用,比如:函数,类。
>>> callable([]) #列表后面不加括号 False >>> def sayhi():pass #定义一个函数 >>> callable(sayhi) #函数调用,后面需要加括号 True
10、chr(i)
功能:通过ascii的值,找到对应的字符
>>> chr(97) 'a'
11、ord(c)
功能:根据字符,找到对应的ascii值
>>> ord('a') 97
12、classmethod(function)
功能:类方法,这个到后续谈到类的时候再说。
13、compile(source, filename, mode, flags=0, dont_inherit=False, optimize=-1)
功能:用于把代码编译的一个过程,这个基本用不到
>>> code = """1+3/2*6""" >>> py_object = compile(code,'','eval') #把代码转换为字符串 >>> eval(py_object) #执行 10.0
14、complex([real[, imag]])
功能:返回一个复数,我们几乎用不到。
>>> complex('1+2j') (1+2j)
15、delattr(object, name)
功能:类那边使用的,先不care。
16、dict(**kwarg)、dict(mapping, **kwarg)、dict(iterable, **kwarg)
功能:返回一个字典
>>> dict() #定义一个字典 {} >>> dict(name='zhangqigao',age=18) #传入非固定关键字参数 {'name': 'zhangqigao', 'age': 18} >>> dict([('name','zhangqigao'),('age',18)]) #传入一个列表 {'name': 'zhangqigao', 'age': 18} >>> dict([['name','zhangqigao'],['age',18]]) #传入一个列表 {'name': 'zhangqigao', 'age': 18}
17、dir([object])
功能:看一个对象有哪些方法
>>> name = [] >>> dir(name) #显示name下的所有的方法 ['__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']
18、divmod(a,b)
功能:地板除,获得一个元组,元组第一个元素是商,第二个元素是余数。
>>> divmod(5,2) (2, 1) #2是商,1是余数
19、enumerate(iterable,start=0)
功能:遍历一个可迭代对象,获取索引和对应的元素的
>>> seasons = ['Spring', 'Summer', 'Fall', 'Winter'] >>> list(enumerate(seasons)) [(0, 'Spring'), (1, 'Summer'), (2, 'Fall'), (3, 'Winter')] >>> list(enumerate(seasons, start=1)) [(1, 'Spring'), (2, 'Summer'), (3, 'Fall'), (4, 'Winter')]
20、eval(expression, globals=None, locals=None)
功能:把字典类型的字符串变成字典,把一个整数类型的字符变成int类型,或者加减乘除这种简单转换成表达式。
>>> eval('1') #字符类型转换成int类型 1 >>> eval("1+3/2*6") #字符串转换为表达式 10.0
21、exec(object[, globals[, locals]])
功能:有语句的和复杂的语句的字符串转换成表达式
code = ''' def timmer(func): #timmer(test1) func=test1 def deco(*args,**kwargs): res = func(*args,**kwargs) #run test1() return res return deco @timmer def test1(): print("in the test1") return "from the test1" res = test1() print(res) ''' exec(code) #输出 in the test1 from the test1