2016-09-17 10 views
1

Ich möchte eine Funktion aus einer anderen Datei aufrufen und Argumente aus der aktuellen Datei an diese Datei übergeben. Mit folgenden Beispiel In-Datei bye.py möchte ich die Funktion „mich“ von „hi.py“ Datei aufrufen und „Abschied“ string funktionieren „mich“ übergeben. Wie geht das ? Danke :)Python 3: Wie Funktion aus einer anderen Datei aufrufen und Argumente an diese Funktion übergeben?

Ich habe Datei hi.py

def me(string): 
    print(string) 
me('hello') 

bye.py

from hi import me 
me('goodbye') 

Was ich bekommen habe:

hello 
goodbye 

Was ich möchte:

goodbye 
+1

Entfernen Sie mich ('Hallo') 'von hi.py? – dangom

+1

http://stackoverflow.com/questions/419163/what-does-if-name-main-do –

Antwort

1

Wenn Sie Dateien zum Importieren erstellen, müssen Sie im Allgemeinen if __name__ == '__main__' verwenden, was zu einem falschen Ergebnis führt, wenn Sie die Datei aus einer anderen Datei importieren. So kann Ihr hi.py aussehen als:

def me(string): 
    print(string) 

if __name__ == '__main__': 
    # Do some local work which should not be reflected while importing this file to another module. 
    me('hello') 
Verwandte Themen