2017-01-25 1 views
0

Ich erhalte diesen Fehler zu importieren, wenn ein Modul aus dem Prov Paket zu importieren versuchen. Hier ist der Inhalt meiner Datei:Import bei dem Versuch, Prov Modul in Python

#!/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') 

Und hier ist die Ausgabe:

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

Irgendwelche Ideen oder Korrekturen? Ich habe Prov mit easy_install prov installiert.

Antwort

0

fand ich den Fehler. Der Name meiner Datei, in die ich importieren wollte, wurde auch prov.py genannt. Es war ein zirkuläres Abhängigkeitsproblem.

Danke Jungs für eine solche schnelle Antworten!

1

Sie benötigen prov.py Ihr Modul Datei umzubenennen. Es verhindert den Import der Fremdbibliothek, da der Modulname in Konflikt steht.

Stellen Sie sicher, prov.pyc entfernt wird.

+0

Können Sie das näher erläutern? Die Datei, die ich zu importieren versuche, heißt Modell, die versucht, einen Fehler und Serializer aus einer Datei namens prov zu importieren. Allerdings sehe ich keine prov im Paket. – Dre

+0

ahh ich reparierte es! Meine Datei, die ich verwendete, hieß prov.py, also war es eine zirkuläre Abhängigkeit. – Dre

+0

'von prov Import Fehler, Serialisierer versucht 'prov' zu importieren; anstelle von 'prov' des Pakets' prov' wird Ihr Modul 'prov' importiert. Versuchen Sie folgende Zeile am Anfang der Datei einzufügen: 'import prov; drucken (prov) ' – falsetru

Verwandte Themen