Mat*_*ohr 3 python pyyaml python-3.x
我在Python 3.x中使用yaml(PyYAML 3.11)库时遇到问题。当我打电话时import yaml,出现以下错误:
Python 3.4.3+ (default, Oct 14 2015, 16:03:50)
[GCC 5.2.1 20151010] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import yaml
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/home/mlohr/python-libs/yaml/__init__.py", line 2, in <module>
from error import *
ImportError: No module named 'error'
Run Code Online (Sandbox Code Playgroud)
error是位于yaml目录中的文件,但__init__.pyfrom yaml确实使用绝对导入。我想这就是问题所在,但我不确定。
在http://pyyaml.org/wiki/PyYAMLDocumentation#Python3support中,提供了有关(应该)Python 3支持的简短路径,所以我不确定是否使用了错误的方式。
将Python 3与使用yaml的python脚本一起使用时,会发生相同的问题(这就是我发现问题的方式)。
使用Python 2.7和2.6可以正常工作。
任何想法/建议如何使它起作用?
看来您PyYAML毕竟是在使用旧版本的,或者正在使用Python3的Python2安装(PyYAML如其他答案中所建议的那样),因为在回溯中我们看到了
from error import *
Run Code Online (Sandbox Code Playgroud)
这不是绝对的导入。您应该升级,PyYAML在您的环境中重新安装Python3源,或者为Python3软件包创建一个新环境。
| 归档时间: |
|
| 查看次数: |
4724 次 |
| 最近记录: |