自动导入或其他使用自定义函数的无代码方式

2024-06-16 09:54:48 发布

您现在位置:Python中文网/ 问答频道 /正文

我在做python的时候写了一个奇怪的handy函数。(列表中的一些方法,一些更有用的输入函数等。)

我想要的是能够从python文件访问这些函数,而不必通过import my_module导入模块。在

我认为它会自动导入一个模块,或者把这些函数放到另一个默认的python模块中,但我并不在乎它是如何实现的。在

有谁能告诉我该怎么做吗?在

(我知道import my_module不是很多,但是你可能会

sys.path.append("c:\fake\path")
from my_module import *

很长时间了……)


Tags: 模块文件path方法函数fromimport列表
2条回答

请参见import this(它在几行中说了很多)。您可以import导入其他模块的模块,例如:

import my.main # where main.py contains `import X, Y, Z`

# X, Y, and Z access:
my.main.X
my.main.Y
my.main.Z

每当运行python解释器时,python模块^{}将自动导入。此模块尝试导入另一个名为sitecustomize的文件。您可以将函数放入其中,将它们添加到^{} mapping中:

for func in [foo, bar, baz]:
    __builtins__[func.__name__] = func

请注意,这只适用于cpython,其中__builtins__是一个可变的dict,这样做将自动使这些函数对本次安装的所有python代码可用。在

我强烈反对你这样做!隐式永远比显式好,任何维护代码的人都会想知道这些东西是从哪里来的。在

最好在模块中使用from myglobalutils import *导入。在

相关问题 更多 >