|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
girls = ['alice','bernice','clarice']
boys = ['chris','arnold','bob']
lettergirls = {}
for girl in girls: #从girls列表中取出一个名字,进行循环
lettergirls.setdefault(girl[0],[]).append(girl) #setdefault在这里的作用是干什么的呀?append 是不是将名字放入了lettergirls字典里面?
print([b+'+'+g for b in boys for g in lettergirls[b[0]]]) #b+'+'+g b后面的+ 和 g前面的+ 是什么意思?这也是一种规定语法吗? b 和 g 这里的值是怎么判断的呢?
菜鸟一枚,回复请尽量详细一点。感谢!!
setdefault() 方法 :如果键不已经存在于字典中,将会添加键并将值设为默认值。
- girls = ['alice','bernice','clarice']
- boys = ['chris','arnold','bob']
- lettergirls = {}
- for girl in girls: #从girls列表中取出一个名字,进行循环
- lettergirls.setdefault(girl[0],[]).append(girl)#取第一个字母为“键”,girl为值,添加到字典中
- print(lettergirls)
- print([b+'+'+g for b in boys for g in lettergirls[b[0]]])
- #这里b后面和g前面的加号用于字符串拼接,其中b依次遍历boys列表,g则是以b中第一个字符为依据查找到的lettergirls里的名字
复制代码
|
|