始终在python脚本的开头导入相同的列表

时间:2018-01-05 18:31:09

标签: python import

我有几个python脚本都以相同的行开头,我希望能够只更改一次行。

例如:

import pickle
import sys
sys.path.append("/Users/user/folder/")
import someOtherModules
x=someOtherModules.function()

我知道我可以将其保存为字符串,然后加载字符串并运行exec()命令,但我想知道是否有更好的方法来执行此操作。

换句话说,我想导入一个模块列表,并在每个脚本的开头运行一些函数。

2 个答案:

答案 0 :(得分:5)

您可以定义自己的模块。

# my_init.py
def init():
    print("Initializing...")

只需在所有脚本的开头添加:

import my_init
my_init.init()

根据脚本和my_init.py的位置,您可能需要将其添加到Python用户站点目录,请参阅:Where should I put my own python module so that it can be imported

答案 1 :(得分:3)

您可以在单独的脚本中移动所有内容,而在另一个脚本中导入所有内容:from my_fancy_script import *。在这种情况下,不仅会执行my_fancy_script内的代码,而且还会将导入推送到另一个文件。

无论如何,最好使用Delgan's answer