Python打包自定义模块完整指南:从setup.py到安装使用

Chloe
Chloe
发布时间:2026-10-15| 4人浏览过
原创

本文详细介绍如何在Python中打包用户自定义模块。通过编写setup.py脚本,利用python setup.py sdist生成压缩包,并执行install命令完成安装。文章还解释了模块的概念、组织程序的优势及提升开发效率的意义,帮助开发者规范化管理代码库。

Python打包自定义模块操作步骤

若需打包的模块文件名为my.py,首先需创建一个名为setup.py的打包脚本,并在其中编写相应的配置代码。


from disutils.core import setup
setup{name = 'my',version = '1.0',py_modules = ['my']}

以管理员权限打开命令行工具(cmd),导航至my.py所在的目录,随后执行特定的打包命令即可完成模块打包操作。


python setup.py sdist

打包执行完毕后,当前目录下会生成一个名为dist的文件夹。进入该文件夹,可以看到生成的my-1.0.zip压缩包。将此压缩包放置于sys.path指定的目录路径下,解压后,再次以管理员身份打开cmd并进入解压后的目录,执行安装命令即可自动完成my模块的安装。


python setup.py install

模块安装成功后,便可在Python环境中正常加载并使用my模块。


import my

模块概念与使用价值解析

相关知识扩展:

自定义模块

所谓自定义模块(即个性化定制),在开始创建之前,必须明确模块的定义与本质。

一个函数通常封装单一功能。例如开发软件时,若将所有代码写入单个文件,会导致结构混乱且代码冗余。因此,应当将程序拆分为多个文件以优化组织结构。然而,若拆分为5个文件,每个文件中可能都包含相同的功能函数,此时将这些重复功能封装到单独的文件中便成为必要选择。

模块本质上是一个存放多个函数的文件,供其他程序调用。那么,如何正确获取并使用这些模块呢?

模块是一系列常用功能的集合体,在Python中,一个.py文件即被视为一个独立的模块。

为何要使用模块?

1、从文件层级组织程序,便于统一管理

随着程序功能的不断增加,为便于管理,通常将程序拆分为多个文件。这种做法使程序结构更加清晰,易于维护。此时,这些文件不仅可作为脚本直接执行,还可作为模块导入到其他项目中,从而实现功能的重复利用。

2、借鉴现有成果,提升开发效率

同理,我们可以下载他人编写好的模块并导入到自己的项目中直接使用。这种“拿来主义”能极大提升开发效率,避免重复造轮子。

注意事项:

若退出Python解释器后重新进入,之前定义的函数或变量将会丢失。因此,通常将程序写入文件中以永久保存,需要时通过python meet.py的方式执行。此时,meet.py被称为脚本(script)。


'''
-*- coding: utf-8 -*-
@Author : Meet
@Software: PyCharm
@File  : meet.py
'''
print('from the meet.py')

name = 'guoboayuan'

def read1():
  print('meet模块:',name)

def read2():
  print('meet模块')
  read1()

def change():
  global name
  name = 'meet'

至此,关于Python打包用户自定义模块的介绍已结束。如需了解更多相关方法,请搜索本站历史文章或继续浏览后续内容。感谢大家的支持!

相关标签:

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。