python有三元运算符吗
2024-09-04 12:42:53
所属网站分类: python基础 > 语法,变量,运算符
很多人以为Python是没有三元运算符的,但实际上python是有的。
它是在2.5版本中添加的。语法是:
a if condition else b
首先condition进行求值,然后根据布尔值返回a或者b返回, 如果求值为true,则返回a,否则返回b。
例如:
>>> 'true' if True else 'false' 'true' >>> 'true' if False else 'false' 'false'
请注意,条件是表达式,而不是语句。这意味着您不能pass在条件中使用赋值或其他语句:
>>> pass if False else x = 3 File "<stdin>", line 1 pass if False else x = 3 ^ SyntaxError: invalid syntax
在这种情况下,您必须使用普通if语句而不是条件语句。
请记住,由于以下几个原因,一些人对此感到不满:
- 参数的顺序与许多其他语言(例如C,Ruby,Java等)不同,当不熟悉Python的“惊人”行为的人使用它时(可能会颠倒顺序),这可能会导致错误。
- 有些人认为它“笨拙”,因为它与正常的思维流程相反(首先考虑条件然后考虑影响)。
- 文体的原因。
最新文章
- getParameterMap()的返回值为Map<;String, String[]>;,从其中取得请求参数转为Map<;String, String>;的方法如下:
- 修改eclipse中包的显示结构为树形
- EXISTS语句
- InfluxDB学习之InfluxDB的HTTP API写入操作
- web桌面程序之锁屏功能分析
- 最小生成树(kruskal模版 模板)
- poj 2342 Anniversary party 树形DP入门
- angular细节整理
- 使用Battery Historian(android 5.0)
- Block学习一门:基本使用,使用block包NSURLRequest异步请求
- popOver 弹出框简单使用
- windows下安装和配置nginx
- PHP全栈学习笔记14
- UOJ#349. 【WC2018】即时战略
- Linux中jdk的安装配置
- Zookeeper Client简介
- 快乐的一天从JAVA第一课开始,生活美滋滋!!!
- Python中的__new__()方法与实例化
- mysql开启binlog日志和慢查询日志
- 【静默】Oracle各类响应文件何在?