Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/343.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 具有条件和布尔的数学运算_Python_Python 2.7_Conditional_Boolean Expression - Fatal编程技术网

Python 具有条件和布尔的数学运算

Python 具有条件和布尔的数学运算,python,python-2.7,conditional,boolean-expression,Python,Python 2.7,Conditional,Boolean Expression,我正在对一个python脚本进行反向工程,该脚本正在将XML文件解析为不同的数据文件类型。在这样做的过程中,我遇到了一行非常优雅的代码: nyear += (1900, 2000)[nyear < 83] 这只是元组索引。在大多数情况下,更好的成语是 2000 if nyear < 83 else 1900 2000如果nyear

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

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

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

2000 if nyear < 83 else 1900
2000如果nyear<83否则1900

nyear<83
返回一个布尔值(
True
False
),如果
False
则将其转换为0,如果
True
则将其转换为1。因此,您正在将元组
(1900,2000)
索引为0或1,这取决于是否满足条件。条件索引就是我所说的。
2000 if nyear < 83 else 1900