您的位置:首页 > 编程语言 > Python开发

@个人学习笔记问题记录(python)(从列表开始,列表推导式)

2018-11-25 23:56 621 查看

@个人学习笔记问题记录(python)(从列表开始,此次为列表推导式)(笔记问题来自fishc.com)
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 slogan[0] == name[0]]
for each in list3:
print(each)
最后的效果为:1,耐克:just do it
2.李宁:一切皆有可能
3.鱼C工作室:让编程改变世界
4,阿迪达斯:Impossible is nothing
其中第三行为列表推导式,如果将其转换成正常代码为:
list1 = [‘1.just do it’,‘2.一切皆有可能’,‘3.让编程改变世界’,‘4.Impossible is nothing’]
list2 = [‘4.阿迪达斯:’,‘2.李宁:’,‘3.鱼C工作室:’,‘1.耐克:’]
list3 = []
for slogan in list1:
for name in list2:
if slogan[0] == name[0]: #判断前面的数字是否是一一对应的
list3.append(name + ‘:’ + slogan[2:]) #slogan[2:]是除了前面数字之后的话

for each in list3:
print(each)
问题:其中slogan[2:]的问题
其中的数字表示把每个字符串第三个索引开始取值并使用。
if条件语句中,name[0] == slogan[0]中的0可以让list1和list2中的数字相同的一一对应起来,比较每个字符串里索引值为0的那个数字是否相等,用来匹配两个列表中的字符串。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: