Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/284.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
捆绑单独的python模块以创建一个;一揽子计划;_Python_Module_Package - Fatal编程技术网

捆绑单独的python模块以创建一个;一揽子计划;

捆绑单独的python模块以创建一个;一揽子计划;,python,module,package,Python,Module,Package,我一直在创建一些按用途组织的模块,每个模块都包含许多函数。我想将这些单独的模块捆绑到一个更大的“包”中,其他用户可以从共享位置导入 目前,我将所有模块都放在一个名为python\u modules的文件夹中,并将此路径附加到os.path中,以便根据需要轻松导入各个模块 但是,我想导入一个包含所有模块的包,这样就不必单独导入每个模块。我知道我可以将所有模块放在一个文件中,但这似乎不是组织流程的好方法 目前,我必须在我的python\u modules文件夹中保存以下文件: __init__.py

我一直在创建一些按用途组织的模块,每个模块都包含许多函数。我想将这些单独的模块捆绑到一个更大的“包”中,其他用户可以从共享位置导入

目前,我将所有模块都放在一个名为
python\u modules
的文件夹中,并将此路径附加到
os.path
中,以便根据需要轻松导入各个模块

但是,我想导入一个包含所有模块的包,这样就不必单独导入每个模块。我知道我可以将所有模块放在一个文件中,但这似乎不是组织流程的好方法

目前,我必须在我的
python\u modules
文件夹中保存以下文件:

__init__.py
load_data_functions.py 
parse_data_functions.py   
network_functions.py
counting_function.py    
math_functions.py
...
...
other_functions.py
\uuuu init\uuuu.py
文件是空的,里面没有任何内容。其他模块内部都有各种功能,有些模块依赖于其他模块。例如,
网络函数.py
依赖于
加载数据函数.py
解析数据函数.py


正如我所说,我想将所有这些模块打包成一个更大的包,以便与其他人共享,因此我们不必单独导入每个模块

一个包只是一堆模块。您已经有了一个
\uuuu init\uuuu.py
文件,因此
python\u modules
已经是一个包了。您只需导入
python\u模块
,然后从每个模块调用函数作为
load\u data\u函数。一些函数()
解析\u data\u函数。一些其他函数()
,假设“我想导入单个包”意味着您希望能够:

import python_modules

port = python_modules.network_functions.get_port()
您的
\uuuu init\uuuu.py
文件应该如下所示:

from . import load_data_functions
from . import parse_data_functions
from . import network_functions
...
from .load_data_functions import *
from .parse_data_functions import *
from .network_functions import *
...
如果您希望能够做到:

import python_modules

port = python_modules.get_port()
您的
\uuuu init\uuuu.py
文件应该如下所示:

from . import load_data_functions
from . import parse_data_functions
from . import network_functions
...
from .load_data_functions import *
from .parse_data_functions import *
from .network_functions import *
...
对于包中相互引用的模块,您可以使用相同的想法,例如,在
network\u functions.py
的顶部,您希望从中放置
。导入加载数据功能
。你应该避免循环导入