三值运算实现

ternar的Python项目详细描述


这是一个使用slice操作模拟c风格的简单技巧 三值运算:

x = a ? b : c

在python中,我们将编写:

>>> x = a and b or c

或者(而不是以上,这对于返回b的错误值是安全的):

>>> x = (a and [b] or [c])[0]

或:

>>> x = b if a else c

或:

>>> x = lambda i: (b, c)[not a]

或:

>>> if a:
...     x = b
... else:
...     x = c

现在我们还可以写:

>>> x = ternary[a:b:c]

用法

使用切片操作:

>>> value = ternary[condition:true_result:false_result]

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java两个构造函数?   java for(inti:x)做什么?   java如何将一个bean的构造函数参数传递给嵌套bean   java从易趣链接提取项目ID   java多线程BufferedReader   安卓全新应用程序在R.java中抛出“语法错误,插入“}”以完成类体”   java Spring启动依赖注入请求范围的bean   java给定的时间,然后约定和异常处理。和莫基托和朱尼特在一起   与Android Studio的java Oracle数据库连接   在web服务器(Heroku)上承载可运行jar文件(Discord bot)的java   java如何每隔n秒在imageview中更改图像   java不理解“volatile”关键字   java使用JPA编写自定义SQL查询   java如何使用filechannel作为参数来编写对象