【发布时间】:2018-06-20 11:51:35
【问题描述】:
list1=['String-1', 'String-2', 'String-1', 'String-1', 'String-2', 'String-2', 'String-1', 'String-2', 'String-1', 'String-2']
list2=['TEXT-1', 'TEXT-1', 'TEXT-1', 'TEXT-1', 'TEXT-1']
list3=['TEXT-2', 'TEXT-2', 'TEXT-2', 'TEXT-2']
我想根据 list1 中的值从 list2 和 list3 构造列表 4 如果 list1=String-1 中的值,则从 list2 中选择,否则从 list3 中选择
finallist=['TEXT-1', 'TEXT-2', 'TEXT-1', 'TEXT-1', 'TEXT-2', 'TEXT-2', 'TEXT-1', 'TEXT-2', 'TEXT-1', 'TEXT-2']
有什么帮助吗?
【问题讨论】:
-
zip 功能在这里可能有用。
-
请展示你的尝试,以及它是如何行不通的。
-
有 5 个
'String-2'项目,但list3的长度是 4。你没有足够的项目去... -
您已经在解释算法,所以缺少的是您对该算法的实现尝试。
-
问题不清楚但可能
list4 = [x[1] if x[0][:8] == "String-1" else x[2] for x in zip(list1, list2, list3)]
标签: python python-3.x list merge