#249937 Guest
25 окт 2017, 19:09
Прежде всего стоит заметить, что тернарный оператор всегда является простым выражением.
А что ты называешь guard'ми в питоне является всего лишь отдельной грамматической конструкцией, не выражением, предиката для filter(.), к традиционным guard'ам она не имеет отношения.
Можно было бы попробовать притянуть аналогию с настоящими guard'ами из функциональщины, но даже так семантическое сходство неполное: тернарный оператор не имеет форм без else части и настоящие guard'ы не всегда являются чисто выражениями (т.е, имеют специальные трактовки в зависимости от языка).188.233.112.121 F
А что ты называешь guard'ми в питоне является всего лишь отдельной грамматической конструкцией, не выражением, предиката для filter(.), к традиционным guard'ам она не имеет отношения.
Можно было бы попробовать притянуть аналогию с настоящими guard'ами из функциональщины, но даже так семантическое сходство неполное: тернарный оператор не имеет форм без else части и настоящие guard'ы не всегда являются чисто выражениями (т.е, имеют специальные трактовки в зависимости от языка).188.233.112.121 F
