尝试从Prov软件包导入模块时出现此错误。 这是我的文件的内容:
#!/usr/bin/env
import sys
egg_path='/Library/Python/2.7/site-packages/prov-1.5.0-py2.7.egg/prov'
sys.path.append(egg_path)
#... rest of code
import model as prov
def main():
# Create a new provenance document
d1 = ProvDocument() # d1 is now an empty provenance document
# Declaring namespaces for various prefixes used in the example
d1.add_namespace('now', 'http://www.provbook.org/nownews/')
d1.add_namespace('nowpeople', 'http://www.provbook.org/nownews/people/')
d1.add_namespace('bk', 'http://www.provbook.org/ns/#')
# Entity: now:employment-article-v1.html
e1 = d1.entity('now:employment-article-v1.html')
# Agent: nowpeople:Bob
d1.agent('nowpeople:Bob')
这是输出:
Traceback (most recent call last):
File "prov.py", line 6, in <module>
import model as prov
File "/Library/Python/2.7/site-packages/prov-1.5.0-py2.7.egg/prov/model.py", line 25, in <module>
from prov import Error, serializers
ImportError: cannot import name Error
任何想法或修复?我使用easy_install prov安装了Prov。
答案 0 :(得分:1)
您需要重命名模块文件prov.py
。它会阻止导入第三方库,因为模块名称冲突。
确保删除prov.pyc
。
答案 1 :(得分:0)
我发现了错误。我尝试导入的文件名称也称为prov.py。这是一个循环依赖问题。
谢谢你们这么快的反应!