Проверить ниже для лучшего объяснения У меня есть длинный список элементов в файле, который читается по строкам, и я хочу сортировать все, что имеет определенную строку в нем. Если слово не содержит каких-либо элементов в сортировке, оно будет добавлено в словарь. Как мне это сделать? Я прочитал некоторые другие ситуации на этом веб-сайте, но я просто не понимаю ... Так что это может быть дубликат, но мне нужно, чтобы кто-то объяснил мне, как это сделать. (да детали от игры TF2)Проверьте, содержит ли строка какие-либо элементы из списка
item_list = ("Non-Tradable Ubersaw", "Screamin' Eagle", "'Non-Craftable Spy-cicle"
sort = ("Non-Tradable", "Non-Craftable") # The items that are not allowed
for word in item_list:
if not sort in word:
if word in items: # add to the dictionary
items[word] += 1
else:
items[word] = 1
уже получил это ответил, а просто сделать вопрос ясен. Я хочу запустить сортировать список: item_list и я хотел сделать это, сделав массив: рода поэтому он проверяет каждый элемент в item_list и проверить, если элемент имеет какие-либо элементы из рода в Это. Если бы он не добавил элемент в словарь.
Зачем делать not_allowed набор? –
@PadraicCunningham Поскольку все элементы уникальны (нет смысла проверять дважды, если существует дубликат), а операция 'in' выполняется быстрее для' set', чем 'list', если количество элементов становится большим. – CoryKramer
, но вы не используете в себе, итерации по множеству? Если OP создает элементы фильтра, то не будет дубликатов –