У меня есть список:NameError при поиске подстроки в списке Python
mylist = ['item 101', 'element 202', 'string 303', 'member 404']
Я хочу, чтобы определить три цифры, связанные с «пункта», но «пункт» не всегда в том же положении, так что я не может использовать mylist[0]
.
Я посмотрел на принятый ответ в this StackOverflow post и попытался следующее:
if any('item' in s for s in mylist):
print(s)
Я получаю следующее сообщение об ошибке:
NameError: name 's' is not defined
В исследуемом эту ошибку, но я не смог найти любые примеры/решения, которые соответствуют этой конкретной ситуации.
Причина вы получаете эту ошибку, потому что 's' только в области видимости жизни этого выражения генератора. Как только он исчерпан, и 'any()' возвращает значение '' '' '' больше не будет доступно. – IanAuld