我是python的新手。我在django中有一个二维列表。现在我要检查给定的文本是否在列表中。但是它不起作用。这是我的代码:
newmessage = 'Bye'
stockWords = [
['hello', 'hi', 'hey', 'greetings'],
['Bye', 'Goodbye']
]
for i in range(0, len(stockWords)):
if newmessage.lower() in stockWords[i]:
return HttpResponse('Found')
else:
return HttpResponse('Not Found')
问题是它仅适用于列表的第一个元素,第二个不起作用。
我究竟做错了什么?有什么建议吗?
最佳答案
您可以尝试一下,生成平坦的低一级列表,然后在其中查找
import itertools
stockWords = [
['hello', 'hi', 'hey', 'greetings'],
['Bye', 'Goodbye']
]
stock = itertools.chain.from_iterable(stockWords)
stock_lower = [x.lower() for x in stock]
newmessage = 'Bye'
if newmessage.lower() in stock_lower:
return HttpResponse('Found')
else:
return HttpResponse('Not Found')
关于python - 如何在Python中将特定文本搜索到二维数组中,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46601788/