Как написать эквивалент кода ниже с помощью карты и фильтра?Используйте карту и фильтр вместо цикла for?
res = []
for x in range(5):
if x % 2 == 0:
for y in range(5):
if y % 2 == 1:
res.append((x, y))
Это ожидаемый результат:
[(0, 1), (0, 3), (2, 1), (2, 3), (4, 1), (4, 3)]
Вот код, который я написал, но это не похоже на работу:
list(map((lambda x,y: (x,y)), filter((lambda x: x%2 == 0), range(5)), filter((lambda y: y%2 != 0), range(5))))
Сопоставляя ваш Соблюдайте два подхода, помните, что [читаемость считается] (https://www.python.org/dev/peps/pep-0020/). – Phillip
Спасибо. Я буду помнить об этом. Я просто хотел лучше понять карту и фильтр. :) – Taiwosam