|
|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
关于第13讲课后作业
使用列表推导式编写一段代码,将两个列表形式以以下形式输出
list1 = ['1,just do it','2,一切皆有可能','3,让编程改变世界',]
list2 = ['3,鱼c工作室’,‘1,耐克','2,李宁']
1.耐克:just do it
2.李宁:一切皆有可能
3.鱼C工作室:让编程改变世界
答案是:- list1 = ['1,just do it','2,一切皆有可能','3,让编程改变世界',]
- list2 = ['3,鱼c工作室’,‘1,耐克','2,李宁']
- list3 = [name + ':' +slogn[2:]for slogn in list1 for name in list2 if name[0] == slogn[0]]
- for each in list3:
- print(each)
-
复制代码
疑问:
1.为什么是slogn[2:],那不是只剩下一个‘3,让编程改变世界’了吗?
2.if name[0] == slogn[0],这个什么意思不太懂
slogn in list1依次会等于'1,just do it', '2,一切皆有可能', '3,让编程改变世界'这三个字符串
所以slogn[2:]就会依次等于'just do it', '一切皆有可能', '让编程改变世界'这三个字符串(去掉了数字和.)
对于if name[0] == slogn[0]
因为name依次会等于list2 里面的 '3,鱼c工作室’,‘1,耐克', '2,李宁'这三个字符串,
所以name[0]就会依次等于‘3’,‘ 2’和‘ 1’
同理slogn[0]也就依次等于‘3’,‘ 2’和‘ 1’
当这两个相同的时候,就可以进行打印输出了 
|
|