内置函数
abs()
1 a = abs(-1)#取绝对值 2 print(a)
bool()
1 0,None,[],"",(),返回false 2 print(bool())#布尔值
all()
1 #所有为真才为真,有一个是假是假 2 n = all([11,22,33,44]) 3 print(n)
any()
1 #只要有真就为真 2 n = any([0,[],{},1]) 3 print(n)
int(),otc(),bin(),hex()
int()#转换成10进制 oct()#转换成八进制 bin()#转换成二进制 hex()#转换成十六进制 print(bin(5)) print(oct(5)) print(hex(15)) print(int("10101001",2))
bytes,str
#bytes(只要转换的字节,按照什么编码) s ="alex" n = bytes(s,encoding="utf-8") print(n) n = bytes("大明",encoding="gbk") print(n) #str (字节转换成字符串) new_str = str(bytes("大明",encoding="utf-8"),encoding="utf-8")
s = "大明"
b = bytes(s,encoding="utf-8")
print(len(s))#按照字符来找是2,在python2.7里面按照字节来找是6
print(len(b))#按照字节来找
callable()
#callable(函数)#判断函数是否可被调用 返回True or False def f1(): pass f1() f2=123 print(callable(f1)) print(callable(f2))
chr(),ord()
#chr()#判断在ASCII码表中,第65个是什么 r = chr(65) print(r) #ord() n = ord("B")#判断在ASCII码表中,大写的B,第多少个 print(n)
random()
import random #随机模块 i = random.randrange(65,91)#随机产生的范围大于等于65小于91 c = chr(i)#把每一个所产生的的数字转换成在ASCLL码表里面对应的字母 print(c) li = [] import random for i in range(6): temp = random.randrange(65,91) c = chr(temp) li.append(c) result = "".join(li) print(result)
exec(),eval()
1 #当打开python文件内容时: 2 #1、python读取文件内容时调用open函数以字符串的形式加载到内存 3 #2、python的内部,把字符串 -> 编译成 -> 特殊的代码 4 #3、执行代码 5 ''' 6 ''' 7 s = "print(123)" 8 9 #编译 10 r = compile(s,"<string>","exec") 11 #执行 12 exec(r)#编译成跟python代码一模一样的东西 13 14 n = "8*8" 15 eval(n)#编译成表达式 16 #将字符串编译成python代码 17 compile() 18 #执行 19 exec()能执行python代码,接收:代码跟字符串,没有返回值 20 eval()只能执行表达式,返回值,只能做表达式的运算。 21 ''' 22 n = exec("7+8+9") 23 print(n)#返回None,没有返回值 24 25 r = eval("7+8+9") 26 print(r)#返回值为24 27 dir 28 print(dir(dict))#查看对象提供的功能
help()
help() help(list)#详细查看源码
divmod()
#共97条数据,每页显示10条,一共需要多少页 r = divmod(97,10)#做一个除法运算 print(r) (9, 7)#商,余数 n1,n2 = devmod(97,10)
isinstance()
s = "damin" #创建了一个对象 "damin" =>str 都是创建了一个类 (list str dict )对象都是类的实例 r = isinstance(s,str) #判断对象跟类是否为实例 print(r)#返回True or False
filter(),map()
#filter跟map def f1(args):#筛选 result = []#结果 for item in args:#把所传入函数的值临时赋值给item if item > 22:#当item大于22时 result.append(item)#在result后面追加 return result #返回值 li = [11,22,33,44,55] r = f1(li) print(r) #filter(函数,可迭代的对象[列表,字典,元组])根据True or False 来判断元素是否保留 def f2(a): if a > 22: return True li = [11,22,33,44] # filter ,循环第二个参数,让每个循环元素执行 函数,如果函数返回值True,表示合法元素把值传给ret ret = filter(f2,li) print(list(ret)) # 以列表的方式打印所输入的值 #自动返回值 f1 = lambda a : a > 10 ret = f1(10) print(ret) #利用lambda表达式进行筛选功能 li = [11,22,33,44,55] result = filter(lambda a:a>33,li) print(list(result)) #map(函数,可迭代的对象(可以被for循环的东西)) 是在函数返回值的基础上进行变化 li = [11,22,33,44,55] def f1(a): return a +100 result = map(f1,li) print(list(result)) result = map(lambda a:a+100,li) print(list(result)) NAME = "ALEX" def f1(): a = 10 c = 20 print(locals())#局部变量 print(globals())#全局变量 f1()
hash()
s = "hhh" print(hash(s))#生成hash(哈希值) #生成的hash值一般用于字典里面 dict = { -3309950391450246349:1 }
id()
name = "damin" print(id(name))#查找在内存中的地址
max(),min(),sum()
1 r = max(11,22,33,44,55)#输出最大值 2 print(r) 3 4 n = min(11,22,33,44,55)#输出最小值 5 print(n ) 6 7 i = sum([11,22,33,44,55])#求和 8 print(i)
pow()
2**10 r = pow(2,10)#前面写数,后面写多少次方 print(r)
reverse()
li = [11,22,33,44,55] li.reverse()#反转 reversed(li)
round()
#四舍五入 r = round(1.8) print(r)
zip()
li = ["name",11,22,33] l2 = ["is",11,22,33] l3 = ["damin",11,22,33] r = zip(li,l2)#会把两个列表里面的元素第一个值组合成元组,两个列表的第二个值组合成元组 print(dict(r)) 效果:{33: 33, 'name': 'is', 11: 11, 22: 22} print(list(zip(li,l2,l3))) 效果:[('name', 'is', 'damin'), (11, 11, 11), (22, 22, 22), (33, 33, 33)]
li = [11,22,33,44]
print(list(zip(li))
效果:[(11,), (22,), (33,), (44,)]#会把列表里面的每个元素都转成元组为一个元素组成一个列表