[英]Finding element from one list in nested second list
我有两个字符串值列表, list1 = ['a','g','f','e']
和list2 = [['c','v','d'], ['a','d','e'], ['g','h']]
。 我想编写一个代码,只有当list2
嵌套列表中的第一个(第0个)元素与list1
第一个(第0个)元素不同时,才会将list1
追加到list2
。
这是我写的代码,它没有错误,但它没有做我想要的
list1 = ['a','g','f','e']
list2 = [['c','v','d'], ['a','d','e'], ['g','h']]
print('List 1: ', list1)
print('List 2: ', list2)
for nest in list2:
if list1[0] != nest[0]:
list2.append(list1)
print(list2)
else:
print("Not added")
您可以使用内置的all
来检查子列表的所有第一个元素是否与list1
的第一个元素不同:
if all(l[0] != list1[0] for l in list2):
list2.append(list1)
也许这有助于:
list1 = ['a','g','f','e']
list2 = [['c','v','d'], ['a','d','e'], ['g','h']]
print("List 1: ", list1)
print("List 2: ", list2)
for nested_list in list2:
if nested_list[0] == list1[0]:
print("Not added")
break
else:
list2.append(list1)
print(list2)
如果循环完成而没有break
,则执行for
循环后的else
块。 你可以阅读更多有关for
- else
的内容为什么python在for和while循环后使用'else'? 例如。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.