Я хочу написать функцию, которая возвращает 3, если x> y возвращает 1, если x == 0, и возвращает 0, если x
def make_points(): return lambda x,y: 3 if x>y else 0
Я пробовал это, но хочу добавить еще одно условие.
возвращает 3, если x> y возвращает 1, если x == 0, и возвращает 0, если x
Вы можете написать это, как описано выше:
lambda x,y: 3 if x>y else 1 if x==0 else 0
Вам не нужна лямбда;в этом нет ничего плохого:
def make_points(x, y): if x == 0: return 1 if x > y: return 3 return 0
Что, мне кажется, гораздо понятнее.