3

我可以在终端中很好地导入 sympy 但是一旦我将它保存为 .py 文件并运行它,它就会给我以下错误:

Traceback (most recent call last):
File "/Users/Dao/Desktop/sympy.py", line 3, in <module>
    from sympy import Symbol
File "/Users/Dao/Desktop/sympy.py", line 3, in <module>
    from sympy import Symbol
ImportError: cannot import name Symbol
[Finished in 0.0s with exit code 1]

我有点困惑为什么会这样……知道吗?

谢谢!

4

3 回答 3

3

这条路径:

/Users/Dao/Desktop/sympy.py

使它看起来像您有自己的文件,名为sympy.py. 如果这是真的,那么它就是在遮蔽 library sympy。换句话说,当您键入 时from sympy import Symbol,Python 认为您的程序是您要从中导入Symbol的程序,这是行不通的。

(1) 重命名您的程序,以及 (2) 删除任何您闲逛的文件Desktop/sympy.pycDesktop/sympy.pyo然后,如果sympy正确安装(并且从你说它可以导入的事实来看,它可能是),它应该可以工作:

>>> from sympy import Symbol
>>> Symbol
<class 'sympy.core.symbol.Symbol'>
于 2012-11-06T14:40:30.987 回答
1

您可能有两个不同版本的 python。尝试输入:

which python

在您的命令行中,并在您的脚本中使用 shebang (#!) 将其设置为您的脚本版本。通过执行 chmod +x 将其作为 exacutacle 运行。

于 2012-11-06T06:35:40.577 回答
1

sympy 没有Symbol直接上课。它在核心模块下。

你可以通过from sympy.core.symbol import Symbol

请注意, sympy 模块包含在您的 python 路径中。

于 2012-11-06T14:06:08.083 回答