在過去的幾年里,我編寫了一堆存儲在不同 python 文件中的函數,我想將它們轉儲到一個文件夾中,然后使用“導入文件夾”來調用這些 python 文件中的函數。到目前為止,我讀過的所有解決方案都需要: from folder.pyfilename import func1
func1()或者 from folder import *
pyfilename.func1()有誰知道是否可以做這樣的事情?
2 回答

嚕嚕噠
TA貢獻1784條經驗 獲得超7個贊
您可以添加一個文件folder/__init__.py并讓它執行子文件夾導入。
__init__.py
from .prog1 import foo, bar
from .prog2 import baz
__all__ = ["foo", "bar", "baz"]
__all__列出了導入的變量,from foo import *因此它并不是真正的所有名稱,但它是實現者認為您應該關心的所有名稱。
現在你可以編寫程序來執行
from folder import *
foo()

紫衣仙女
TA貢獻1839條經驗 獲得超15個贊
老實說,你的問題沒有太大意義,但是你可以這樣做:
import folder.program as prog
from folder import program2 as prog2
prog.function()
prog2.function()
如果您不知道,該as關鍵字用于創建別名。
據我所知,你不能做你想做的事。你必須告訴 python 該函數位于哪個文件中。
我猜您想導入整個文件夾,因為添加所有導入需要一段時間?我認為您只需將所需的所有功能復制到一個文件中 - 或者import像您已經完成的那樣將每個文件/功能復制到一個文件中。
添加回答
舉報
0/150
提交
取消