Как использовать set () на основе одного из списков в заархивированном списке - PullRequest
1 голос
/ 22 января 2020

Я создаю свой собственный словарь и пытаюсь удалить все дублирующиеся слова. У меня есть текстовый файл с каждой строкой в ​​формате: слово - определение. Я импортировал текстовый файл в python и создал два списка; одно из всех слов и одно из всех определений. Я сжал два списка вместе, что дало список кортежей, где каждый элемент списка является кортежем (слово, определение). Я пытаюсь использовать set () в заархивированном списке, основанном только на слове, чтобы удалить дублированные слова, даже если определения - это разные строки.

Ответы [ 2 ]

0 голосов
/ 22 января 2020

Если вам действительно нужно установить по каким-то причинам результат вывода:

dct = {k: v for k,v in [('word', 'meaning'), ('another_word', 'another_meaning'), ('word', 'different meaning')]}
result = set((k,v) for k,v in dct.items())
0 голосов
/ 22 января 2020

Используйте словарь, набор которого не является правильным контейнером для этого (к вашему сведению, он сохранит последние дубликаты элементов, если вы не перевернете список)

zipped_list = [('apple', 'a red fruit'), ('apple', 'delicious'), ('banana', 'a yellow fruit')]

print(dict(zipped_list))
print(dict(reversed(zipped_list)))

{'apple': 'delicious', 'banana': 'a yellow fruit'}
{'banana': 'a yellow fruit', 'apple': 'a red fruit'}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...