3

我正在 Dreamhost Web 服务器上设置一个现有的 django 项目,到目前为止,我已经让一切正常工作。但是我在 python 2.5 下开发,而 dreamhost 默认使用 python 2.4。由于 if 关键字,以下行似乎给出了语法错误:

'parent': c.parent.pk if c.parent is not None else None
                       ^

这种形式的if语句是在 Python 2.5 中引入的吗,如果是的话,是否有一个简单的更改可以使其与 Python 2.4 兼容?

或者,我应该改用 Python 2.5。我已经将 python 2.5 安装到我的主目录下的一个目录中,并且已经成功运行了 2.5 下的 python 解释器。如果我想对所有东西都使用 Python 2.5,我在哪里可以设置呢?

4

2 回答 2

4

是的,这种内联 if添加了 2.5,大约 4 年前发布。你可以像这样更新你的 Dreamhost 版本

于 2010-05-02T14:07:34.240 回答
2

http://www.diveintopython.net/power_of_introspection/and_or.html

(1 and [a] or [b])[0]
'parent': (c.parent is not None and [c.parent.pk] else [None])[0]
于 2010-05-02T14:04:23.013 回答