2016-12-15 3 views
1

У меня есть три списка с четырмися значениями в каждом списке, я должен удалить повторяющиеся значения из этих три спискаКак удалить дубликаты записей из нескольких списков, чтобы в питоне

Вот три списка

country_list = ['USA', 'India', 'China', 'India'] 
city_list = ['New York', 'New Delhi', 'Beijing', 'New Delhi'] 
event_list = ['First Event', 'Second Event', 'Third Event', 'Second Event'] 

Поскольку его показ во всех трех списках «Индия», «новый Дели» и «Второе событие» повторяются, означает, что они снова повторяются друг с другом. Я хочу удалить эту повторяющуюся ценность и хочет получить результат, как

country_list = ['USA', 'India', 'China'] 
city_list = ['New York', 'New Delhi', 'Beijing'] 
event_list = ['First Event', 'Second Event', 'Third Event'] 

Итак, как я могу получить этот результат, есть ли какая-нибудь функция для этого?

+1

Что это нужно делать с Джанго? – Sayse

ответ

1

Что-то вроде

country_list = list(set(country_list)) 
city_list = list(set(city_list)) 
event_list = list(set(event_list)) 

должен сделать это. Это связано с тем, что set не может иметь дубликатов по определению. Когда вы конвертируете свой список в набор, дубликаты отбрасываются. Если вы хотите, чтобы данные были в форме списка еще раз, вам нужно преобразовать его обратно в список, как показано выше. В большинстве случаев вы можете использовать набор точно так же, как вы бы использовали список.

, например

for item in set(country_list): 
    print item 

поэтому вернуться к списку преобразования не могут быть необходимы.

3

Один простой способ сделать следующее:

country_list = list(set(country_list)) 
city_list = list(set(city_list)) 
event_list = list(set(event_list)) 

Надеется, что это помогает.

0

Просто используйте set(). Посмотрите в это: Python Sets

И это: Sets

Для ваших списков вы можете сделать это следующим образом:

>>> city_list = ['New York', 'New Delhi', 'Beijing', 'New Delhi']

>>> set(city_list)

set(['New Delhi', 'New York', 'Beijing'])

>>> list(set(city_list))

['New Delhi', 'New York', 'Beijing']

Смежные вопросы