#python #list #optimization
Вопрос:
Я написал этот код :
words = ['compressed', 'encoded_raw', 'flanc_raw_check', 'tex', 'compressed_raw', 'raw']
matchbox = []
for word in words:
matches = [w for w in words if word in w]
if matches and len(matches) > 1:
for match in matches:
print(f' {match}')
print('')
matchbox.append(matches)
print(f' {min(max(matchbox), key=len)}')
теперь я хотел выяснить, какое слово в списке слов уникально, а также найдено в других элементах списка, например, в этом вывод является необработанным, поскольку он уникален и находится в других элементах списка слов.
Комментарии:
1. чтобы убедиться, что его уникальное приведенное слово в набор при повторении его:
for word in set(words)
2. @joshmeranda достаточно справедливо , но цель в том, присутствует ли этот уникальный предмет также в других предметах .
3. Разделяются ли искомые слова подчеркиванием? Я имею в виду: «сырое» находится в «copressed_raw», но может быть также в «рау», «креветках» и т. Д. Если все уникальные слова разделены, вы можете подготовить
set
уникальные слова (не элементы), разделив элементы и добавивset
только слова.4. хороший момент, хотя изначально я просто искал те, которые разделены,
_
потому что в противном случае креветка не является сырой, однако compressed_raw ссылается на сырую в сжатом виде, все еще сохраняя значение raw.