zoukankan      html  css  js  c++  java
  • python 打包详解

    基本步骤:

    1. 写setup.py

    2. 运行“python setup.py sdist”

    3. 在当前目录下会生成文件夹“dist”,打包好的代码就在dist中,以“.tar.gz”的形式被压缩

    4. 其他人下载压缩包,解压后直接“python setup.py install”,即可安装

    setup.py 模板:

    #!/usr/bin/env python
    
    from distutils.core import setup
    
    setup(
        name='foo',
        version='1.0.0',
        description='summary of your code',
        long_description='''detailed description of your code ''',
        author='your Name',
        author_email='your Email',
        url='',
        license='MIT',
        platforms='All',
        keywords=['22','333','4444','55555'],
        py_modules=['foo'],
    )
    View Code

    其中:

    1. py_modules:是你要打包的py文件名,多个文件用逗号间隔。如果出现“foo.foo1”,则表明文件是‘foo/foo1’。其中foo是文件夹,必须包含“__init__.py”
    2. description和long_description可以理解为是标题和内容的关系
    3. long_description:起始和结束要加注释字符'''或者""",否则编译会报错
    4. 打包之后,在dist中生成的压缩包,名字是name-version.tar.gz(例如:foo-1.0.0.tar.gz)
    5. 安装后生成的egg-info内容如下,与setup.py的设置,一一对应。

    ====================================

    Metadata-Version: 1.0
    Name: foo
    Version: 1.0.0
    Summary: summary of your code
    Home-page: UNKNOWN
    Author: your name
    Author-email: your Email
    License: MIT
    Description: detailed description of your code
    Keywords: 22,333,4444,55555
    Platform: All

    ==========================================

    打包发布package:

    如果要打包发布的不是单个文件,而是一个package的时候

    不使用py_modules, 而是用packages。例如:

    packages=["foo"]

    此时当前目录下需要有文件夹foo,该文件夹中包含“__init__.py”。

    如果package不在当前目录下,需要使用package_dir指定package的目录,例如:

    package_dir={'foo':'lib'}

    即目录是lib/foo

  • 相关阅读:
    Linux操作系统 (RHEL 7/CentOS 7)
    (OK) 运行cBPM in Fedora23
    (OK) 运行cBPM—Fedora23
    (OK) Install codeblocks_16.01 on Fedora23
    (OK) Fedora23——Docker——CORE—testing
    (OK) CORE nodes access Internet—虚拟节点访问互联网—commands
    (OK-half) Fedora23——Docker——CORE—testing
    (OK) running imunes in Fedora 23
    (OK-HALF) To Find a Rogue DHCP Server—tcpdump/dhclient—nmap
    (OK) shell script—Find a Rogue DHCP Server—tcpdump/dhclient—nmap
  • 原文地址:https://www.cnblogs.com/shizouwei/p/6142086.html
Copyright © 2011-2022 走看看