Уведомления

Группа в Telegram: @pythonsu

#1 Июнь 4, 2013 20:03:59

che1911
Зарегистрирован: 2013-06-04
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

Поиск одинаковых элементов в списке

Есть список из нескольких строковых значений. Как определить, есть ли в списке повторяющиеся элементы?

Офлайн

#2 Июнь 4, 2013 22:40:33

elisk
Зарегистрирован: 2013-04-09
Сообщения: 35
Репутация: +  7  -
Профиль   Отправить e-mail  

Поиск одинаковых элементов в списке

s = ['qqqq', 'wwww', 'eeee', 'qqqq', 'zzzz', 'zzzz', 'qqqq']
z = {}
for i in s:
	if i in z:
		z[i] += 1
	else:
		z[i] = 1
print z 

Офлайн

#3 Июнь 4, 2013 22:56:32

dimy44
От: Евпатория
Зарегистрирован: 2012-04-21
Сообщения: 463
Репутация: +  42  -
Профиль  

Поиск одинаковых элементов в списке

>>> L = ["a", "b", "c", "b"]
>>> ("yes", "no")[len(L)==len(set(L))]
'yes'
>>> 

Офлайн

#4 Июнь 5, 2013 07:04:04

che1911
Зарегистрирован: 2013-06-04
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

Поиск одинаковых элементов в списке

elisk, спасибо, работает, но немного сложнее чем нужно.
dimy44, вау! Очень круто, спасибо. А где почитать про set?

Отредактировано che1911 (Июнь 5, 2013 07:34:34)

Офлайн

#5 Июнь 5, 2013 20:45:41

o7412369815963
От:
Зарегистрирован: 2009-06-17
Сообщения: 1986
Репутация: +  32  -
Профиль   Отправить e-mail  

Поиск одинаковых элементов в списке

Пример от elisk, можно заменить на

from collections import Counter
Counter(['qqqq', 'wwww', 'eeee', 'qqqq', 'zzzz', 'zzzz', 'qqqq'])

Офлайн

#6 Июнь 6, 2013 08:37:28

alexbadaloff
От: Иваново
Зарегистрирован: 2013-04-11
Сообщения: 198
Репутация: +  16  -
Профиль   Отправить e-mail  

Поиск одинаковых элементов в списке

che1911
А где почитать про set?
Так-то гугл вроде еще работает. Но уж, коли с этим беда:
http://pythonworld.ru/tipy-dannyx-v-python/mnozhestva-set-i-frozenset.html



————————–
Истина где-то рядом

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version