假如在同一级目录下有两个python文件(即python模块),那么这两个模块不需要安装也能相互进行
import
引用,但是不在同级目录下甚至不在同一项目中的模块怎么做到相互引用呢?
Python setuptools
setuptools
是python自带用于打包构建的工具,使用此工具可打包出可供import
引用的模块或者可供他人安装的wheel
包。
官方文档:setuptools
pip install安装模块
首先需要在项目根目录创建setup.py
,用于设置setuptools的构建配置。这里是直接使用的setuptools.setup()
函数进行配置,官方推荐的方式是使用setup.cfg
配置文件。
import setuptools
setuptools.setup(
name='test-tool', # 扩展功能包名称
py_modules=['test'] # 打包模块名称,对应test.py,安装包之后使用此名称进行import
)
切换到项目根目录,通过pip install .
命令进行安装。安装成功后,就可以在其他python文件中import模块并调用该模块下的函数。