Skip to main content
 首页 » 编程设计

sum() 函数的 Python 代码错误——语法在一个平台上有效,在另一个平台上无效

2025年05月04日14mfrbuaa

我在使用 Python(继承代码)时遇到错误。在一个平台上有效的 Sum() 函数调用在另一个平台上无效——我认为这是由于某些跨平台不兼容的语法。我得到的错误是:

bsrlx1(112)% /usr/bin/python run-print.py init data 
  File "run-print.py", line 105 
    val = sum(1 if x >= 0.5 else 0 for x in metricC[key]); 
                 ^ 
SyntaxError: invalid syntax 

尽管这种语法在其他地方也适用。任何人都知道语法更改或问题可能是什么??

我调用的 Python 版本是: Python 2.4.3(#1,2011 年 4 月 14 日,20:41:59) Linux2 上的 [GCC 4.1.2 20080704 (Red Hat 4.1.2-50)]

我程序中的头文件是:

#!/usr/bin/python2.5 

所以我想我可能正在使用 2.5 版

请您参考如下方法:

您正在使用 conditional expression ,这是在 Python 2.5 中添加的。

您没有运行 /usr/bin/python2.5,您正在使用 /usr/bin/python(即 2.4)。要使用文件中指定的解释器运行它,请使其可执行,然后直接运行它:

chmod +x run-print.py 
./run-print.py 

除非你的发行版有一个特殊的向后移植包,否则你不太可能安装 Python 2.5。