|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
代码1:
>>> list1 = ['1.just do it','2.=一切皆有可能','3.让编程改变世界','4.impossible is nothing']
>>> list2 = ['4.阿迪达斯','2.李宁','3.鱼C工作室','1.耐克']
>>> list3 =[name + slogan[2:] for name in list2 for slogan in list1 if name[0] == slogan[0]]
>>> for each in list3:
print(each)
4.阿迪达斯impossible is nothing
2.李宁=一切皆有可能
3.鱼C工作室让编程改变世界
1.耐克just do it
代码2:
>>> list1 = ['1.just do it','2.一切皆有可能','3.让编程改变世界','4.impossible is nothing']
>>> list2 = ['4.阿迪达斯','2.李宁','3.鱼C工作室','1.耐克']
>>> list3 =[name + slogan[2:] for slogan in list1 for name in list2 if name[0] == slogan[0]]
>>> for each in list3:
print(each)
1.耐克just do it
2.李宁一切皆有可能
3.鱼C工作室让编程改变世界
4.阿迪达斯impossible is nothing
问:代码1和代码2的区别在于list3,最终导致打印结果不一样。为什么list3的代码顺序不一样会产生这样的结果呢?
可以先试试这段代码
- >>> list1 = [1,2,3,4]
- >>> list2 = [1,2,3,4]
- >>> list3 = [str(a1) + str(a2) for a1 in list1 for a2 in list2]
- >>> list3
- ['11', '12', '13', '14', '21', '22', '23', '24', '31', '32', '33', '34', '41', '42', '43', '44']
复制代码
相当于是for a1 in list1里套了一个for a2 in list2
这段代码同理
|
|