首页 > 其他 > 详细

0427每日练习

时间:2019-10-03 11:23:54      阅读:96      评论:0      收藏:0      [点我收藏+]
#习题16:两个长度相同的list,一个里面的做字典的key,一个里面做字典的value,请写个函数实现。
#方法一:
def make_dict(list1,list2):
    result_dict={}
    for i in range(len(list1)):
        if isinstance(list1[i],(list,dict)):#字典的key必须是不可变对象,list和dict要排除
            continue
        else:
            result_dict[list1[i]]=list2[i]
    return result_dict
a=[b,2.3,(2,3),{2:2},[1,2,3],2+3j,3,"aaaa"]
b=[1,2,3,4,5,6,7,8]
print(make_dict(a,b))

#方法二:lambda函数依据代码实现,但是作为key的list必须传不可变类型

a=[1,2,3,4,5,6,7,8]
b=[[1,2],2.3,(2,3),{2:2},[1,2,3],2+3j,3,"aaaa"]
def func(a,b):
    return dict(map(lambda k,v:(k,v),a,b))
print(func(a,b))

 

 

 

#习题17:统计一个字符串中每一个字母累计出现的次数
#思路:将字母当做字典的key,次数当做字典的value,如果key不在字典中的话将其赋值为1,在的话做累加
import string
s="I am a good boy!"
for i in s:
    if i in string.punctuation:
        s=s.replace(i," ")
s=s.split()
#print(s)
d = {}
for i in s:
    for j in i:
        if j not in d:
            d[j]=1
        else:
            d[j]+=1
print(d)

 

0427每日练习

原文:https://www.cnblogs.com/wenm1128/p/10780210.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!