python基础17—几个内置函数

一、min、max、sum、enumerate的使用

tu=(11,22,33,44)

li=[1,2,3,4,5]

dic={“a”:11,“b”:44,“c”:99}

 

print(min(tu))    得到结果为:11

print(min(li))    得到结果为:1

print(min(dic.values()))    得到结果为:11

print(max(tu))    得到结果为:44

print(max(li))    得到结果为:5

print(max(dic.values()))    得到结果为:99

print(sum(tu))    得到结果为:110

print(sum(li))    得到结果为:15

print(sum(dic.values()))    得到结果为:154

 

res=enumerate(tu)

print(list(res))  得到结果为:[(0,11),(1,22),(2,33),(3,44)]

res2=enumerate(li)

print(list(res2))  得到结果为:[(0,1),(1,2),(2,3),(3,4),(4,5)]

res3=enumerate(dic)

print(list(res3))  得到结果为:[(0,‘a’),(1,‘b’),(2,‘c’)]  

 

二、filter、lambda的使用

li=[11,2,888,36,121]

需求:过滤出大于50的数据

方法一:for循环

li2=[]

for i in li:

    if i>50:

    li2.append(i)

print(li2)

 

方法二:filter过滤器

def func(x):

    return x>50

res=filter(func,li)   

print(list(res))

 

关于lambda与filter结合使用

res=filter(lambda x:x>50,li)

print(list(res))

 

三、eval的使用

需求:将s=“{“a”:11,“c”:111}”转为字典类型

错误示范:print(dict(s))

正确示范:res=eval(s)

print(res)  得到结果为:{“a”:11,“c”:111}

 

需求:将s=“[11,22,33,44]”转为列表

错误示范:print(list(s))

正确示范:res=eval(s)

print(res)   得到结果为:[11,22,33,44]

 

错误示范:s3=“yuan”

                 print(eval(s3))  去掉引号后yuan不是有效的表达式,会以为是个变量

 

四、zip的使用

将以下两个列表,组合为一个字典,title中的元素作为键,data中的元素作为值

title=[“name”,“age”,“gender”,“info”]

data=[“yuan”,18,“男”]

方法一:for循环实现

dic={}

for i in range(2):

    key=title[i]

    value=data[i]

    dic[key]=value

print(dic)

 

方法二:zip实现

res=zip(title,data)

print(dict(res))

 

注:例子中title和data中数据长度不一,按最短的匹配完结束

注意:zip的对象只能进行一次强制转换

如:

print(list(res))

print(tuple(res))

同时出现时,下面的print会输出空元组

posted @ 2021-09-13 10:50  2orange  阅读(44)  评论(0编辑  收藏  举报