Set_up: Bir programda kullanmam gereken her fonksiyon için bir .py dosyam var.
Bu programda, harici dosyalardan fonksiyon çağırmam gerekiyor.
Denedim:
from file.py import function(a,b)
Ama hata alıyorum:
ImportError: Dosya.py' adında bir modül yok; dosya bir paket değil
Bu sorunu nasıl çözebilirim?
İçe aktarırken file.py
eklemenize gerek yoktur. Sadece from file import function
yazın ve sonra function(a, b)
kullanarak fonksiyonu çağırın. Bunun işe yaramamasının nedeni, file
Python'un çekirdek modüllerinden biridir, bu yüzden dosyanızın adını değiştirmenizi öneririm.
Eğer a.py
dosyasındaki fonksiyonları b.py
adlı bir dosyaya aktarmaya çalışıyorsanız, a.py
ve b.py
dosyalarının aynı dizinde olduğundan emin olmanız gerektiğini unutmayın.
Öncelikle bir .py
dosyasına ihtiyacınız yoktur.
Eğer bir a.py
dosyanız varsa ve içinde bazı fonksiyonlar varsa:
def b():
# Something
return 1
def c():
# Something
return 2
Ve bunları z.py
içine aktarmak istiyorsanız şunları yazmanız gerekir
from a import b, c
Önce dosyayı .py biçiminde kaydedin (örneğin, my_example.py
).
Ve eğer bu dosyada fonksiyonlar varsa,
def xyz():
--------
--------
def abc():
--------
--------
Çağırma fonksiyonunda aşağıdaki satırları yazmanız yeterlidir.
file_name: my_example2.py
============================
import my_example.py
a = my_example.xyz()
b = my_example.abc()
============================