[英]Search for string in a nested list (python)
我有一個nested_list = [['a'],['b','c'],['b','d']],我有'b'的目標元素,我將如何搜索這個列表返回包含元素的列表,因此 ['b', 'c'],['b','d'] ?
我試過了,但它只給了我['b','c']:
for elem in nest_list:
for item in elem:
if 'b' in item:
return elem
這是因為您返回了該項目,並且一旦到達 return 語句,此循環就不會再次運行。 如果您將return elem
替換為print(elem)
,您會看到兩個結果都被打印出來。
如果您想返回這兩個值,那么您可以創建另一個數組來附加您的結果,然后在 for 循環之外返回它:
returnList = []
for elem in nest_list:
if 'b' in elem:
returnList.append(elem)
return returnList
請注意,您還可以刪除其中一個 for 循環,因為in
列表中進行檢查。
for elem in nest_list:
for item in elem:
if 'b' in item:
print(elem,end=",")
您可以使用列表理解:
nested_list = [['a'], ['b','c'], ['b','d']]
output = [sublst for sublst in nested_list if 'b' in sublst]
print(output) # [['b', 'c'], ['b', 'd']]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.