828 Stimmen

Wie rufe ich eine Funktion aus einer anderen .py-Datei auf?

file.py enthält eine Funktion namens function. Wie importiere ich sie?

from file.py import function(a,b)

Das obige führt zu einem Fehler:

ImportError: Kein Modul namens 'file.py'; Datei ist kein Paket

9voto

Mahabubuzzaman Punkte 339

In MathMethod.Py.

def Add(a,b):
   return a+b 

def subtract(a,b):
  return a-b

In Main.Py

import MathMethod as MM 
  print(MM.Add(200,1000))

Output:1200

6voto

Mohan Punkte 145

Sie müssen keine file.py hinzufügen.

Halten Sie einfach die Datei am selben Speicherort wie die Datei, aus der Sie sie importieren möchten. Dann importieren Sie einfach Ihre Funktionen:

from file import a, b

6voto

ASE Punkte 1264

Lösung1: Definieren Sie in einer Datei myfun.py jede Funktion(en).

# Funktionen
def Print_Text():
    print( 'Danke')

def Add(a,b):
    c=a+b
    return c 

In der anderen Datei:

#Importieren Sie die definierten Funktionen
from myfun import *

#Rufen Sie die Funktionen auf
Print_Text()
c=Add(1,2)

Lösung2: Wenn diese obige Lösung nicht für Colab funktioniert hat

  1. Erstellen Sie einen Ordner myfun
  2. Erstellen Sie in diesem Ordner eine Datei __init__.py
  3. Schreiben Sie alle Ihre Funktionen in __init__.py
  4. Importieren Sie Ihre Funktionen aus dem Colab-Notebook from myfun import *

5voto

Girish M Punkte 69

Sie sollten die Datei an demselben Ort haben wie die Python-Dateien, die Sie importieren möchten. Außerdem reicht 'from file import function' aus.

4voto

NuOne Punkte 5259

Keine der obigen Lösungen hat für mich funktioniert. Ich habe den Fehler ModuleNotFoundError: No module named whtever erhalten. Also habe ich meine Lösung wie folgt importiert

from . import filename # ohne .py  

In meiner ersten Datei habe ich die Funktion fun wie folgt definiert

# Dateiname ist firstFile.py
def fun():
  print('Das macht Spaß')

In der zweiten Datei möchte ich die Funktion fun aufrufen

from . import firstFile

def secondFunc():
   firstFile.fun() # Aufruf von `fun` aus der ersten Datei

secondFunc() # Aufruf der Funktion `secondFunc`

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X