python---内置函数

#自带函数,不需要定义,直接就可以日常使用

sum([1,2,3]) #int类型 求和
min("123") #最小 字符串
max([1,2,3]) #最大

round(1,9842,2) #保留n位小数 后边写几保留几位小数
sorted(s)#排序,它返回一个list 默认升序
sorted(s,reverse=True) #排序,指定reverse参数为True降序
reversed(s) #反转变量,默认返回是生成器 查看结果转成 list reversed(s)
dir(s)#提供帮助,查看某个变量的所有属性(方法)
divmod(10,3) #出发取商和余数,返回两个值,第一个是商,第二个是余数
quit() #代码遇到它,退出程序,后面不在运行 linux 0正常退出 其他是错误退出
exit() #退出程序
eval()#执行简单的python代码的,定义变量,运算
exec()#执行python代码,只要是合法的代码都可以运行
locals()#获取当前函数里面的所以局部变量,返回的是一个字典,字典里的key是变量名,value是变量的值
globals()#获取所有全局变量
enumerate()#枚举函数,可以传数组或者list,会自动计算下标,默认从零开始,也可以指定从几开始
zip() #把多个数组变成二维数组,或者循环多个list
filter()#第一个参数要传一个函数名,第二个参数是一个可以循环的对象
numbers = range(1, 11)
def func1(n):
print("调用了func1")
if n % 2 == 0:
return True
return False
result = filter(func1, numbers) # 第一个参数要传一个函数名,第二个参数是一个可以循环的对象(listsetstrdicttuple
print(list(result))
#他会循环list,把list的每一个参数传给指定的函数,把函数返回true的参数保留下来
def zzz(n):
return str(n).zfill(2)
# ret = map(lambda n:str(n).zfill(2),range(1,34))
ret = map(zzz,range(1,34))
#第一个参数要传一个函数名,第二个参数是一个可以循环的对象(listsetstrdicttuple
#循环调用函数,它会保存每次调用函数返回的结果,放到一个list
print(list(ret))

all([1,2,3,0])#list每个元素都是true,那么就返回true,如果有一个false,那么就返回false
any([1,2,3,0])#list只要有一个元素是true,那么就返回true,否则就返回false
chr(35) #http://ascii.911cha.com/ ascii转成应对的字符
ord("#") #把对应的字符转成ascii
bin(89)#10进制转成二进制
oct(10000)#10进制转成八进制
hex(10000)#10进制转成十六进制 转回来int("2710",base=16)16进制转成10进制

if __name__ == '__main__': #main就可以带出来了


内置函数参考:

3.1sum,max,min,round:


sum,max,min:真对元组或者list


1.sum():求和


l=[1,2,3,333,434]
print(sum(l))
结果:773

2.max():求最大值


l=[1,2,3,333,434]

print(max(l))
结果:434

3.min():求最小值


l=[1,2,3,333,434]

print(min(l))
结果:1

4.round():四舍五入:


例:求平均数:


avg=sum(l)/len(l)

print(round(avg,2)) # 保留小数 2是小数格式 类型不变

3.2any,all


1.any():只要list里面有一个为true,结果就位true


print(any([False,False,False,True,[]]))
结果:True

2.all():list全部为true,结果才是true


print(all([True,True,True,True,[False]]))
结果:True

3.3阿克斯码转化


1.chr():把阿克斯码转化为对应的值


 print(chr(65)) 结果:A

2.ord():把值转化为阿克斯码、


print(ord("A"))结果:65

3.阿克斯码对应表表:


https://www.cnblogs.com/biaochen/p/11307382.html

3.4十进制二进制转化


bin():十进制转化为二进制


print(bin(10)) 结果:1010 不需要看0b

int():二进制转化为十进制


print(int('1010',base=2))   #2进制转化为10进制 2代表当前为2进制数字

 print(int('a',base=16))  # 16进制转10进制

oct()10进制转化为8机制


print(oct(10))

hex():10进制转化为16进制


print(hex(10))

3.5divmod():取商和余数


print(divmod(10,3)) # 取商和余的 (3, 1)

3.6局部变量,全局变量


1.locals():取当前函数的局部变量,返回值为字典


2.global():取全局变量,返回值为字典


name="abc"
def test():
age=19
addr="北京"
print(locals()) #{'age': 19, 'addr': '北京'}
print(globals())
test()

3.7zip()压缩:


1.实现list合并,对应下标


usernames=["admin","test","dev"]
passwords=['123','456',"678"]

print(list(zip(usernames,passwords)))
结果:[('admin', '123'), ('test', '456'), ('dev', '678')]

3.8排序:sorted():结果为list


1.字符串:


s='12345612'
print(sorted(s))
结果:['1', '1', '2', '2', '3', '4', '5', '6']

print("".join(sorted(s))) # 排序后转化为字符串,使用str方法 会将中括号也转 化

2.对字典按照value进行排序:


(1)排序key:、


dic={"admin":89,"test":100,"dev":77}
print(sorted(dic)) # 按照key排序

(2)对字典按照value进行排序:


dic={"admin":89,"test":100,"dev":77}

def x(l):
return l[1]
print(sorted(dic.items(),key=x,reverse=True)) # key为sorted固定的, key赋值函数名 不需要加括号 reverse=True 降序
结果:[('test', 100), ('admin', 89), ('dev', 77)]

或者使用匿名函数:

print(sorted(dic.items(),key=lambda x :x[1],reverse=True))

(3)匿名函数:lambda:只能定义一些简单功能


name=lambda x:x*3 # 冒号前面数入参 冒号后面是返回值
print(name(5))

name=lambda x:x*3 # 冒号前面数入参 冒号后面是返回值

3.9循环调用


1.map():循环调用函数,保存到一个list里面,返回结果就是一个list


l=[1,2,3,14,906]
def t(x):
x=str(x)
if len(x)==1:
return "00"+x
elif len(x)==2:
return "0"+x
return str(x)
print(list(map(t,l)))
结果:['001', '002', '003', '014', '906']
或者使用匿名函数或者内置函数:

print(list(map(lambda x:str(x),l)))
print(list(map(str,l)))# str本身是一个函数 所有可以直接使用str函数

2.filter()循环调用函数,结果为true就保留,false就过滤掉


l = [1, 2, 3, 14, 906]
def func(x):
return x%2==0
print(list(filter(func,l))) #[2, 14, 906]
结果:[2, 14, 906]
如果使用map

print(list(map(func,l))) 
结果:

[False, True, False, True, True]
 
posted @ 2021-10-15 09:54  王王的王  阅读(321)  评论(0)    收藏  举报