Уведомления

Группа в Telegram: @pythonsu

#1 Окт. 5, 2011 11:34:12

Liu
От:
Зарегистрирован: 2011-10-04
Сообщения: 4
Репутация: +  0  -
Профиль   Отправить e-mail  

последовательность из кортежей

Привет. Как можно сравнить определенные значения в кортеже, входящем в последовательность?
Пример:
seq=
как определить, существует ли кортеж (x,y,z) такой что у него (0,0,z) - т.е. поиск только по первым двум элементам кортежа

для полностью заданного кортежа можно делать так:
if (0,0,0) in seq

для (0,0,z) могу только так:
for k in seq:
if k == (0,0):
…….

короче можно?



Отредактировано (Окт. 5, 2011 11:41:11)

Офлайн

#2 Окт. 5, 2011 11:56:26

Liu
От:
Зарегистрирован: 2011-10-04
Сообщения: 4
Репутация: +  0  -
Профиль   Отправить e-mail  

последовательность из кортежей

уже лучше:
if [ (x,x) for x in seq ] ==(0,0)



Офлайн

#3 Окт. 6, 2011 01:28:55

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9735
Репутация: +  843  -
Профиль   Отправить e-mail  

последовательность из кортежей

>>> tup = [(0, 0, 0), (1, 1, 1), (0, 0, 2)]
>>> any(i for i in tup if i[:2] == (0, 0))
True
>>> any(i for i in tup if i[:2] == (0, 2))
False
>>>



Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version