python项目打包成pip安装&pip install 介绍

先看一个简单的python项目文件目录

.
├── pip_setup
│   ├── __init__.py
│   └── ext
│       └── __init__.py
└── setup.py


pip_setup就是所需要打包的python文件。我们关注的是setup.py这个文件,这个是打包的关键

from setuptools import setup, find_packages

setup(
    name='pip_setup',
    version='0.1.0',
    description='just for test',
    classifiers=[
        'License :: OSI Approved :: MIT License',
        'Programming Language :: Python',
        'Intended Audience :: Developers',
        'Operating System :: OS Independent',
    ],
    author='bin381',
    url='https://github.com',
    author_email='',
    license='MIT',
    packages=find_packages(),#需要处理哪里packages,当然也可以手动填,例如['pip_setup', 'pip_setup.ext']
    include_package_data=False,
    zip_safe=True,
)

以上是一个简单的setup.py文件配置,详细的参数配置可以参考setuptool HomePage


python setup.py check 

  可以检查setup.py是不是正确,如果只输出running check,那么就ok了

python setup.py dist

  会将项目打包成一个tar.gz文件


pip install(pip install)


  关于pip install,这里说一点关于安装自己的库(没有发布到pypi上)。这里假设Proj_A项目需要安装库Library_B,一般来说我们可以在Proj_A的requirement.txt里面加入一行Library_B,然后执行pip isntall -r requirement.txt就可以安装库Library_B,当然Library_B必须先上传到PYPI上才能这么安装。如果Library_B并没有上传到PYPI,pip支持VCS(版本控制系统),所以我们还能安装git等上面的项目。所以requirement.txt可以加上这样的一行git+https://github.com/sample/Library_B.git,这里有个小坑就是如果加上-e参数,这个库会安装到/src/SomeProject”上(参考vcs-support)




关于python中的setup.py

你可能感兴趣的:(python项目打包成pip安装&pip install 介绍)