Python如何调用自己写的包
在Python中,我们可以将一组相关的模块组织成一个包,以便于管理和复用代码。当我们写好一个包后,就可以在其他项目或程序中调用这个包的功能。本文将介绍如何在Python中调用自己写的包。
1. 创建包
首先,我们需要创建一个包来存放我们的模块。包是一个包含__init__.py
文件的文件夹,这个文件夹里可以包含多个模块文件。创建一个名为my_package
的包,目录结构如下:
my_package/
__init__.py
module1.py
module2.py
__init__.py
文件是一个空文件,它告诉Python这个目录是一个包。module1.py
和module2.py
是我们自己写的模块文件。
2. 编写模块代码
在module1.py
文件中,我们定义一个函数add
,它可以实现两个数相加的功能:
# module1.py
def add(a, b):
return a + b
在module2.py
文件中,我们定义一个函数multiply
,它可以实现两个数相乘的功能:
# module2.py
def multiply(a, b):
return a * b
3. 导入包
要在其他程序中使用我们自己写的包,首先需要导入这个包。假设我们有一个主程序文件main.py
,我们可以在这个文件中导入my_package
包:
# main.py
import my_package
print(my_package.module1.add(2, 3)) # 调用module1中的add函数
print(my_package.module2.multiply(2, 3)) # 调用module2中的multiply函数
我们使用import
语句导入my_package
包,并使用my_package.module1
和my_package.module2
来访问相应模块中的函数。在调用函数时,需要加上模块名作为前缀。
4. 使用包
通过导入包后,我们就可以在主程序中使用包中的函数了。在main.py
文件中,我们调用my_package.module1.add
函数和my_package.module2.multiply
函数,分别实现两个数相加和相乘的功能。
运行main.py
,输出如下:
5
6
我们成功调用了自己写的包中的函数,并得到了预期的结果。
5. 安装包
上面的示例是在同一个项目中使用自己写的包。如果我们想在其他项目或其他机器上使用这个包,我们可以将包打包成一个可安装的包,并通过pip安装。
在my_package
目录的上一级目录下创建一个setup.py
文件,用于描述如何打包这个包:
# setup.py
from setuptools import setup
setup(
name='my_package',
version='1.0.0',
packages=['my_package'],
)
然后,在命令行中切换到setup.py
所在的目录,并执行以下命令打包:
python setup.py sdist
这个命令会在当前目录下生成一个名为dist
的文件夹,里面包含了打包后的包文件。
我们可以将生成的包文件拷贝到其他项目或其他机器上,然后通过pip安装这个包:
pip install my_package-1.0.0.tar.gz
安装完成后,我们可以在任何项目中导入并使用这个包了。
总结
本文介绍了在Python中如何调用自己写的包。首先我们需要创建一个包,并在包中编写模块代码。然后通过导入包,在其他程序中使用包中的函数。最后,我们可以将包打包成一个可安装的包,通过pip安装在其他项目或其他机器上使用。
通过使用自己写的包,我们可以更好地组织和复用代码,提高开发效率。
甘特图
gantt
title Python调用自己写的包
section 创建包
创建目录结构 : 2022-01-01, 1d