我在使用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版本是: Python2.4.3(2011年4月14日,20:41:59) [GCC 4.1.2 20080704(Red Hat 4.1.2-50)]关于linux2
我的程序中的头文件是:
^{pr2}$所以我想我可能用的是2.5版
正如您所发现的,这些代码不必要地复杂,不能在Python2.4上运行。改为:
优点:(1)将在Python2.4上运行(2)不必解释添加布尔函数(3)效率更高(不浪费时间添加零)(4)最后没有愚蠢的
;
。在您使用的是一个conditional expression,它是在Python2.5中添加的。在
您不是在运行
/usr/bin/python2.5
,而是在使用/usr/bin/python
(即2.4)。要使用文件中指定的解释器运行它,请使其可执行,然后直接运行:不过,除非您的发行版有专门的后端口包,否则不太可能安装Python2.5。在
相关问题 更多 >
编程相关推荐