今天整理下py内置函数
#!/usr/bin/env python # -*- coding:utf-8 -*- # Author: linghanchujian # 内置函数 # py软件一运行自带函数 print( abs(-5) ) #abs 绝对值 print( all([0,1,2]) ) #all 列表或可迭代的对象里元素都为真的话 返回 true print( any([0,1,2]) ) #any 列表或可迭代的对象里元素有一个为真的话 返回 true asc = ascii([0,1,"凌寒初见"]) #ascii 将一个obj对象转化成str字符串 print( asc,type(asc) ) print( bin(10) ) #十进制转换成二进制 print( bool(0) ) #判断真假 a = bytes("abcd",encoding="utf-8") #将str字符串转换成bytes二进制 b = bytearray("abcd",encoding="utf-8") #感觉功能差不多 print("bytes is %s,bytesarray is %s" %(a,b)) print("bytes is %s,bytesarray is %s" %(a[0],b[0])) #这里取值是ascii码的值 def func():pass print(callable(func)) #判断对象是否可调用 类 函数等 返回ture print(chr(97)) #返回数字对应的ascii值 print(ord("a"))#返回ascii对应的数字 CodeStr =""" for i in range(3): print(i) """ pyObj = compile(CodeStr,"","exec") #将字符串变成可执行代码 感觉多此一举 exec (pyObj) #其实直接exec 就可以了 (如:exec(CodeStr)) # complex() 返回一个复数,数学意义上的i ,工程是用 j print(dict()) #生成一个默认字典 a=[] print(dir(a))# 查看列表下面的方法 print(divmod(5,2))#以元祖的形式返回商和余数 #enumerate() 最常用就是遍历 print(eval("1+3")) #一方面可以计算str字符串数字运算,另一方面可以将字符串转化成字典 func = lambda m:5 if m<8 else m #lambda匿名函数 能处理最复杂的就是三元运算 print(func(10)) res = filter(lambda n:n>5,range(10)) #过滤出十以内大于五的数 过滤出来是个迭代器所以要遍历取值 print("-----------filter----------") for i in res: print(i) Res = map(lambda n:n*2,range(10)) #将列表 0-9 全部乘以2 并且替换原来的列表 这个也是个迭代器 print("-----------map-------------") for j in Res: print(j) import functools Res1 = functools.reduce(lambda x,y:x+y,range(10))#累加 返回 值 这个不是 print("-------functools----------") print(Res1) #a = set([1,22,33,1,22,44]) #可变集合 可以修改 删除 增加 #b = frozenset([1,22,33,1,22,44]) #不可变集合 不可以修改 删除 增加 print(globals()) #以字典的形式返回当前文件所有变量 key-value(如: { 变量名 : 变量 }) print(hash("Linghanchujian")) #哈希算法 print(hash("Linghanchujian")) #哈希算法 print(hex(255))#十进制转换成十六进制 # 查询局部变量 def funclocals(): locals_var = "Linghanchuajian" print(locals()) pass funclocals() print(oct(8))#十进制转八进制 print(pow(2,3)) # 2的3次方 求幂 def Reprfunc(): print("这是一个函数") pass print(repr(Reprfunc),type(repr(Reprfunc)))#将obj对象转换成字符串 print(round(1.33355,3))#保留3位小数 四舍五入 Dict = {0:5,2:3,-8:9,5:10,-5:-10,4:8} #无序 print("--------------字典----------------") print(Dict) print(sorted(Dict)) #取出key键 组成列表并且排序 print(sorted(Dict.items())) #以元祖形式取出 key-value 键-值 组成列表,并且按 key 键来排序 print(sorted(Dict.items(),key=lambda x:x[1])) #以元祖形式取出 key-value 键-值 组成列表,并且按 value 值来排序 a = [1,5,3,9] b = ["Ling","han","chu","jian"] for i in zip(a,b): #以元祖的形式将列表一一对应 返回的是个迭代器 print(i) #import 模块名 #如果只知道str类型的模块名 即 "模块名" 用 #__import__("模块名") 导入
下面运行结果
5 False True [0, 1, '\u51cc\u5bd2\u521d\u89c1'] <class 'str'> 0b1010 False bytes is b'abcd',bytesarray is bytearray(b'abcd') bytes is 97,bytesarray is 97 True a 97 0 1 2 {} ['__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'] (2, 1) 4 10 -----------filter---------- 6 7 8 9 -----------map------------- 0 2 4 6 8 10 12 14 16 18 -------functools---------- 45 {'__spec__': None, 'Res': <map object at 0x00000218C3860940>, 'functools': <module 'functools' from 'C:\\Users\\Administrator\\Anaconda3\\lib\\functools.py'>, 'asc': "[0, 1, '\\u51cc\\u5bd2\\u521d\\u89c1']", '__doc__': None, '__loader__': <_frozen_importlib_external.SourceFileLoader object at 0x00000218C37B89E8>, 'b': bytearray(b'abcd'), 'func': <function <lambda> at 0x00000218C381E730>, 'Res1': 45, 'j': 18, '__name__': '__main__', 'pyObj': <code object <module> at 0x00000218C3862030, file "", line 2>, 'a': [], 'res': <filter object at 0x00000218C3860908>, '__package__': None, '__cached__': None, 'CodeStr': '\nfor i in range(3):\n print(i)\n', '__file__': 'G:/python Project/s14/Day2/BuiltIn.py', 'i': 9, '__builtins__': <module 'builtins' (built-in)>} -829969281298395847 -829969281298395847 0xff {'locals_var': 'Linghanchuajian'} 0o10 8 <function Reprfunc at 0x00000218C381EBF8> <class 'str'> 1.334 --------------字典---------------- {0: 5, 2: 3, 4: 8, 5: 10, -8: 9, -5: -10} [-8, -5, 0, 2, 4, 5] [(-8, 9), (-5, -10), (0, 5), (2, 3), (4, 8), (5, 10)] [(-5, -10), (2, 3), (0, 5), (4, 8), (-8, 9), (5, 10)] (1, 'Ling') (5, 'han') (3, 'chu') (9, 'jian')