setup.py 文件是 Python 包管理工具(如 pip)用来处理包依赖、元数据等的脚本文件。它位于包的根目录下,用于定义包的特性、以及构建和安装包。
一个基本的 setup.py 文件可能包含以下内容:
- pythonfrom setuptools import setup, find_packages
-
- setup(
- name='my_package',
- version='0.1',
- packages=find_packages(),
- install_requires=[
- # 需要依赖的包列表
- 'numpy',
- 'pandas',
- ...
- ],
- entry_points={
- 'console_scripts': [
- 'my_script=my_package.my_module:my_function',
- ...
- ],
- },
- )
这个 setup.py 文件做了以下几件事:
name 指定了包的名称,通过 version 指定了包的版本。packages 指定了包含在包中的 Python 模块。find_packages() 函数会自动查找所有包含 Python 模块的目录。install_requires 列出了这个包依赖的其他 Python 包。这些包会在安装当前包时自动安装。entry_points 定义了包的入口点,即用户如何从命令行调用这个包。例如,如果定义了 'console_scripts': ['my_script=my_package.my_module:my_function'],那么用户就可以通过命令 my_script 来调用 my_package.my_module 中的 my_function 函数。当你执行 python setup.py install 或者 pip install . 时,pip 会运行这个 setup.py 文件,并在你的环境中安装这个包。