三元表达式的另一种写法?

来源:12-3 map

Max_wen

2019-03-11

根据逻辑与and和逻辑或or的语法:
三元表达式是否可以用如下方式来写,是在难以接受python这种三元表达式的写法 :<

x = 20
y = 10

r1 = x if x > y else y
r2 = x > y and x or y

print(r1) # 20
print(r2) # 20


试了一些常用的情况,基本没毛病。
请老师也帮忙参考一下是否可以直接这么用,不考虑去代码可读性的情况下。

写回答

1回答

7七月

2019-03-11

这种用逻辑运算符组合的操作 本身就没有通用性,如果判断条件更为复杂呢,你能确保运算优先级吗。还有就是,r2的写法,基本上别人是理解不了他是一个三元表达式的。

0
4
7七月
回复
Max_wen
这里你只是想说,这个写法适合现在这种场景吗?还是希望推广到复杂场景呢?
2019-03-11
共4条回复

Python3.8系统入门+进阶 (程序员必备第二语言)

语法精讲/配套练习+思考题/原生爬虫实战

14446 学习 · 4438 问题

查看课程