Форум сайта python.su
first = (“Максим”,“Петро”,“Василь”,“Микола”,“Давид”)
last = (“Максимов”,“Петров”,“Василів”,“Миколаєнко”,“Давиденко”)
def func(elem):
if len(elem)%2==0:
return elem
total1=list(map(func,first))
total2=list(map(func,last))
total=list(zip(total1,total2))
print(total)
('Максим', ‘Максимов’), (None, ‘Петров’), ('Василь', None), ('Микола', ‘Миколаєнко’), (None, None)
Как оставить элементы в которых нет None?
Результат должен быть примерно таким:
('Максим', ‘Максимов’), ('Микола', ‘Миколаєнко’)
Отредактировано HIST (Окт. 22, 2017 13:37:21)
Офлайн
HISTчтобы результат был примерно таким - решение должно быть примерно такое
Результат должен быть примерно таким:
('Максим', ‘Максимов’), ('Микола', ‘Миколаєнко’)
total = [(x,y) for x,y in zip(first,last) if len(x)%2 == 0 and len(y)%2 == 0]
Отредактировано marvellik (Окт. 22, 2017 13:53:40)
Офлайн
>>> lst = [(1, 1), (None, 2), (3, None), (None, None), (5, 5)] >>> out = [i for i in lst if None not in i] >>> out [(1, 1), (5, 5)] >>>
Офлайн
Спасибо всем
Офлайн