使用条件和布尔运算的数学运算

时间:2017-09-19 21:46:46

标签: python python-2.7 conditional boolean-expression

我正在对一个将XML文件解析为不同数据文件类型的python脚本进行逆向工程。在这样做的过程中,我遇到了一段非常优雅的代码:

nyear += (1900, 2000)[nyear < 83]

我想知道是否有人知道在Python中调用此操作是什么?我以前从未在Python中看过这样的语法。

顺便说一下,几个nyear值的结果如下:

>>> nyear = 17    
>>> nyear += (1900, 2000)[nyear < 83]    
2017    
>>> nyear = 83    
>>> nyear += (1900, 2000)[nyear < 83]    
1983

1 个答案:

答案 0 :(得分:1)

这只是元组索引。在大多数情况下,更好的习语是

ExecuteAsync()