- 1
p = lambda a, b: a + b; m = lambda a, b: a * b; d = lambda a, b: a / b; x=float(input()); c=float(input()); print(p(x, c), m(x, c), d(x, c))
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
−74
p = lambda a, b: a + b; m = lambda a, b: a * b; d = lambda a, b: a / b; x=float(input()); c=float(input()); print(p(x, c), m(x, c), d(x, c))
gost 30.12.2016 15:22 # +2
И чо? "Мама, мама, я узнал, что в Питоне есть лямбды"?
roman-kashitsyn 30.12.2016 15:51 # +3
Хорошо хоть, что в пистоне оговорён порядок вычисления аргументов в правой части таких присваиваний
3_14dar 30.12.2016 18:16 # −2
roman-kashitsyn 30.12.2016 18:17 # −1
Нет, не везде.
3_14dar 30.12.2016 18:19 # −1
guestinho 30.12.2016 18:23 # −1
roman-kashitsyn 30.12.2016 18:33 # −1
In Objective CAML, the order of evaluation of arguments is not specified.
-- https://caml.inria.fr/pub/docs/oreilly-book/html/book-ora029.html
В Rust тоже не определён раньше был, сейчас не знаю.
3_14dar 30.12.2016 21:11 # −2
barop 30.12.2016 22:44 # −1
php?
roman-kashitsyn 30.12.2016 22:54 # +1
3_14dar 31.12.2016 00:14 # −2
PanZagloba 30.12.2016 17:11 # −5
guest 30.12.2016 17:16 # +6
CHayT 30.12.2016 17:42 # +5
gost 30.12.2016 18:14 # +2
Когда я увидел несколько лямбд в одной строке - сначала подумал, что там хотя-бы несколько вложенных замыканий, с которыми без пол-литры не разобраться, а здесь самое примитивное использование именованных лямбд, какое только можно придумать.
g0cTb 31.12.2016 13:21 # 0
Код из оп-поста препроцессируется в
А это подсчет квадратного корня вместе с вводом-выводом одним выражением - однострочник на питоне.
barop 01.01.2017 02:15 # −67
Her 30.12.2016 17:55 # 0
m - minus хер там multiply