2017-01-12 3 views
-1

Ich bin auf dem Mac python2.7 mit und ich habe 2 Python-Dateien unter demselben VerzeichnisPython-Datei eine andere Python-Datei importieren, fordert Fehler

$ls *.py 
1p.py 2.py 

Und sie sind sehr einfach:

$cat 1p.py 
def f(): 
    print "hello" 

$cat 2.py 
import 1p 
f() 

Aber läuft 2.py fehlgeschlagen:

$python 2.py 
File "2.py", line 1 
    import 1p 
     ^
SyntaxError: invalid syntax 

muss ich Setup und env Variable oder mein Programm ändern? Danke

+1

Mögliche Duplikate von [In Python, wie Dateiname zu importieren beginnt mit einer Nummer] (http://StackOverflow.com/Questions/9090079/in-python-how-to-import-filename-starts-with-a- Nummer) –

Antwort

1

Um importiert zu werden, müssen Modulnamen und somit Dateinamen gültige Python-Bezeichner sein. Auch wenn Ihr Dateisystem den Namen akzeptiert, ist es nicht genug.

Eine Kennung wie 1p ist nicht gültig, Sie müssen Ihre Moduldatei umbenennen. Warum nicht p1.py stattdessen? Das würde funktionieren.

Verwandte Themen