pysqlcipher installation - SyntaxError: Missing parentheses in call to 'print'

pysqlcipher installation - SyntaxError: Missing parentheses in call to 'print'

我有 Python 3.4.2,我尝试在我的电脑上安装 pysqlcipher windows 8。 在我的命令提示符中输入以下代码后:

git clone https://github.com/leapcode/pysqlcipher/
cd pysqlcipher
python setup.py build_sqlcipher

我收到以下错误:

  File "setup.py", line 64
    print "CFLAGS", os.environ['CFLAGS']
                 ^
SyntaxError: Missing parentheses in call to 'print'

好像是打印的问题。我有Python 3.4.2,这里使用的打印语法对应的是Python 2.X。我做了很多搜索,但我没有找到任何解决方案。

有人知道如何使用 Python 3.4.2 安装 pysqlcipher 吗?

感谢您的帮助!

PS: 我已经按照这个 tutorial 并且所有指示的事情都已完成。

看起来代码是为 Python 2 编写的。Python 3 包含一些更改,可能会使某些 Python 2 与 Python 3 不兼容。

Differences between python 2 and python 3

您可以使用附带的 2to3 工具将 setup.pycross_bdist_wininst.py 转换为 python 3 兼容代码。

只需运行2to3 -w setup.py2to3 -w cross_bdist_wininst.py即可转换成python代码。自动转换工作得很好,但它确实错过了一个必要的转换。更改 setup.py

中的第 209 行
-- if sources is None or type(sources) not in (ListType, TupleType):
++ if sources is None or type(sources) not in (List, Tuple):

并删除第 30 行:

-- from types import ListType, TupleType

这应该允许您编译使用 python setup.py build_sqlcipher