当你在 setup 脚本中写入 packages = ['foo'] 时, setup 脚本的同级目录下可以找到 foo/__init__.py。...这描述了两个包,一个在根目录下,另一个则在 pkg 目录下。 默认的“包:目录”映射关系表明你可以在 setup 脚本所在的路径下找到 mod1.py 和 pkg/mod2.py。...find_packages packages=find_packages(exclude=('tests', 'robot_server.scripts')), exclude 里面是包名,而非路径 include_package_data...在 MANIFEST.in 引入 include mydata.data 将不起作用 exclude_package_date 排除一部分包文件 {'myapp':['.gitignore]},就表明只排除...最终会在 bin/ 下生成 legit 可执行 py 文件,调用制定的函数 setup.py 实例分析 kennethreitz/setup.py #!
用户在使用setuptools创建的包时,并不需要已安装setuptools,只要一个启动模块即可。...= "0.1", packages = find_packages(), #packages=['myapp'] # 包括在安装包内的Python包 ) 执行python setup.py...,如图片,配置文件等 --scripts 安装时需要执行的脚步列表 setup.py打包命令各参数详解: >>python setup.py --help-commands --python...python *.egg时,会执行我的test()函数,在文档中说需要将.egg放到PATH路径中。...如果你想排除一部分文件,可以在setup.py中使用”exclude_package_date”参数,比如: setup( ...
setup.py 文件简介 其实真正需要打包一个 Python 包只需要在项目根目录中提供一个 setup.py 文件即可,这个文件简单的内容如下: from setuptools import find_packages...为什么需要这个文件呢?...如果仅仅执行 python setup.py sdist 命令,那么你打出来的是一个 xxx.tar.gz 的包,可以理解为源文件包,当你把这个包上传到 PyPI 之后,使用 pip install 进行安装的时候会另外执行一次...也就是说,如果你在上传到 PyPI 之前就执行 python setup.py sdist bdist_wheel 打包,那么会同时得到一个 tar.gz 和一个 whl 的包,这个时候使用 pip install...1、打包应该用 sdist 还是 bdist_wheel ? 我的回答是一起用,将两个文件一起上传到 PyPI,同时,在本地执行上传命令前应该先查看一下两个包里面的内容是否缺少。
Python 包 ) 使用安装文件创建 wheel 有了上面的 setup.py 文件,我们就可以打出各种安装包,主要分为两类:sdist 和 bdist。...Source distribution 使用 sdist 可以打包成 source distribution,支持的压缩格式有: 使用方式为: $ python setup.py sdist --formats...packages=find_packages(exclude=['contrib', 'docs', 'tests*']) # exclude 用于排除不打包的 package description:...Github 上的 Python 库时,除了最基本核心的 setup.py 文件和主程序之外,还会看到其他一些文件。...LICENSE.txt:项目许可说明文件 setuptools 默认打包的文件:README.rst/README.md、setup.cfg、MANIFEST.in 所以其他的文件,如 LICENSE.txt,在源码包时需要手动在
setup.py 文件内容 from setuptools import setup, find_packages str_version = '1.0.31' setup(name='utils-vvd...发布 python 包 在命令行中切换到当前目录,输入: python setup.py sdist 会在当前目录生成 dist 文件夹 你可以任选以下两种方式之一发布你的轮子。...使用命令:python setup.py sdist upload,还是和上面一样,简单但有安全隐患,目前已淘汰。...install twine 生成 whl 包 安装 whell 升级 setuptools pip install wheel pip install --upgrade setuptools 执行命令...python setup.py bdist_wheel 在 dist 文件夹中会生成 whl 包 可以 pip install xxx.whl 直接安装 管理你的包 如果你的包已经上传成功,那么当你登录
PATH 是 MacOS/Linux 和其他类 Unix 操作系统中的环境变量,它告诉 shell 在响应用户发出的命令时,去搜索哪些目录的 Python 执行环境(即准备运行的程序)。...sdist bdist_wheel --universal'.format(sys.executable)) # os.system('{0} setup.py sdist build --universal...(exclude=["tests", "*.tests", "*.tests.*", "tests.*"]), # packages=find_packages(exclude=["TuringRobots...另外,您也可以使用 exclude 参数显式地阻止在包中包含测试,但是这样做稍微不那么健壮。...为了仅在运行测试时自动安装它,您可以将以下内容添加到您的 setup.py: from setuptools import find_packages, setup setup( name='mypythonlib
两种安装方法都是需要编写 setup.py 文件的。 对于第一种方法我们在安装前一般还要提供安装的依赖包, 也就是requirement.txt文件。...setup.py文件案例: from setuptools import Command, find_packages, setup __lib_name__ = "BaiduMapAPI" __lib_version...long_description 包的详细描述,后续上传到pypi,可以用于显示在主页上的描述 find_packages():这个函数会默认在和setup.py同一目录下搜索各个含有init.py的包...除了通过data_files添加数据包文件,还可以通过package_data设置可以被find_packages找到添加的文件: packages = find_packages(exclude=("...sdist bdist_wheel 上传PyPi: twine upload dist/* 上传成功后可以运行pip install命令测试。
多文件模块,带setup.py:python setup.py install 卸载时只能手动删除,一般安装在系统类库目录下 python setup.py install --record files.txt...setup.py文件的使用: % python setup.py build #编译 % python setup.py install #安装 % python setup.py sdist ...中主要执行一个 setup函数,该函数中大部分是描述性东西,最主要的是packages参数,列出所有的package,可以用自带的find_packages来动态获取package。...使用者拿到这个包后,解压,到foo-1.0目录下执行:python setup.py install,那么,foo.py就会被拷贝到python类路径下,可以被导入使用(如果安装是egg文件,会把egg...使用者拿到这个包后,解压,到mypackage-1.0目录下执行:python setup.py install,那么,foo.py就会被拷贝到python类路径下,可以被导入使用(如果安装是egg文件
sdist 此时在目录中生成dist文件夹,文件夹中有testpg-1.0.tar.gz文件,用户安装的话只需要testpg-1.0.tar.gz文件即可。...setup.py sdist 4.上传到PyPI上。...在如上第2步后,输入如下命令即可在生成.whl python setup.py bdist_wheel .whl文件在dist目录下,上传到PyPI: twine upload dist/* 四、完整示例...setup.py 文件内容是设置一些打包的配置信息,打包任务需要重点掌握的地方 # coding=utf-8 from setuptools import setup, find_packages...# python setup.py sdist 打包成tar.gz的形式 # python setup.py bdist_wheel 打包成wheel格式 setup( py_modules
中的代码如下: #coding:utf-8 ''' ''' import os import sys from setuptools import setup, find_packages setup...( name = "demo", version = "0.0.1", packages = find_packages(), include_package_data...打包时候的命令有两个, 一个是打包成egg文件:python setup.py bdist_egg 。...另外一种是打包成压缩文件形式:python setup.py sdist 。执行结果同上,不过文件格式不同。 打包完成之后,当然要安装了,上一篇介绍了virtualenv,创建一个虚拟环境以供测试。...然后执行python setup.py install 就会在你的虚拟环境的bin下创建一个demo的可执行文件,你在虚拟环境中运行:demo,输出结果。 很简单的东西,但是需要参考。
.py文件取名(demo.py) 文件内容如下: def demo_test(): print("My package was successful") 4.在项目目录下创建setup.py...文件 文件内容如下: from setuptools import setup, find_packages setup( name='mypure', version='1.0...', packages=find_packages(), author='Example Author', author_email='', keywords='...:执行 python setup.py sdist 此时项目中会出现两个新文件夹如下: 6.在pypi官网注册账号:官网:https://pypi.org/ 7.执行 pip install twine...8.执行twine upload dist/*上传包 上传包过程中需输入用户名、密码 9.执行pip install 包名安装包 简短的指南,后续再有新人,可以直接传授,?
一、构建工具setup.py的应用场景在安装python的相关模块和库时,我们一般使用“pip install 模块名”或者“python setup.py install”,前者是在线安装,会安装该包的相关依赖包...所以在安装普通的python包时,利用pip工具相当简单。...但是在如下场景下,使用python setup.py install会更适合需求:在编写相关系统时,python 如何实现连同依赖包一起打包发布?...,如图片,配置文件等--scripts 安装时需要执行的脚步列表--package_dir 告诉setuptools哪些目录下的文件被映射到哪个源码包。...另外,也可以排除一些特定的包find_packages(exclude=["*.tests", "*.tests.*", "tests.*", "tests"])--install_requires =
一、方法1: 单文件模块 直接把文件拷贝到 $python_dir/Lib 二、方法2: 多文件模块,带setup.py 下载模块包,进行解压,进入模块文件夹,执行: python setup.py install...setup.py文件的使用如下: % python setup.py build #编译 % python setup.py install #安装 % python setup.py sdist...setup.py中主要执行一个 setup函数,该函数中大部分是描述性东西,最主要的是packages参数,列出所有的package,可以用自带的find_packages来动态获取package。...简单的例子: setup.py文件: from setuptools import setup, find_packages setup( name = " mytest " , ...在Windows里,easy_install这个命令在python安装目录下的scripts里面,所以需要把scripts加到环境变量的PATH里,这样用起来就更方便,linux下不需要注意这个问题。
第一步,在命令行中安装所需要的工具,pip install setuptools wheel twine 第二步,编写相应的setup.py文件,内容如下: from setuptools import...setup, find_packages setup(name='tkinter_vote', version='2.0.0', description='A voting program...sdist和python setup.py bdist_wheel,创建相应的文件,如图: ?...%3Aaction=submit_form,然后选择第三步生成的PKG文件 第五步,执行命令twine upload dist/*,上传whl文件,完成项目的创建和包的分享,如图: ?...安装后的文件在Python安装文件夹中的Lib\site-packages文件中,可以根据需要执行 ? 或者打开相应的源文件进行阅读,如图: ?
在PyPI上,您可以找到几乎所有的Python包和库,这些包和库可以帮助您完成各种任务,如数据科学、机器学习、网络编程、Web开发等。...True, long_description=long_description, long_description_content_type="text/markdown")2.3 发布发布时需要依赖...:python3 setup.py sdist bdist bdist_wheelsdist是生成源码包,bdist_wheel是对应生成二进制包,执行上述指令完毕后会在当前目录生成一个dist文件夹,...pypirc 文件,将之前的API token放到这个文件内:[pypi] username = __token__ password = pypi-xxxxxxxxxxxxxxxxxxx- 然后在执行上传就不需要用户密码了...x-api-keyconfiguration = harness_python_sdk.Configuration()configuration.api_key['x-api-key'] = 'pat.xxx.xxx.xxx
easy_install 有很多不足: 安装事务是非原子操作, 只支持 svn, 没有提供卸载命令, 安装一系列包时需要写脚本; pip 解决了以上问题, 已俨然成为新的事实标准, virtualenv...打包:python setup.py sdist 这样在文件夹中就多出了几个文件,在dist文件夹中的,logIn-1.0.0.tar.gz就是我们的发布包了; (2)....sdist 安装: sudo python setup.py install (--record files.txt) 卸载: sudo cat files.txt | sudo xargs rm...自动从网上下载安装所需的setuptools包. from setuptools import setup, find_packages setup( name = "HelloWorld",...version = "0.1", packages = find_packages(), # 常用,要熟悉 :会自动查找当前目录下的所有模块(.py文件) 和包(包含__init___.
easy_install 有很多不足: 安装事务是非原子操作, 只支持 svn, 没有提供卸载命令, 安装一系列包时需要写脚本; pip 解决了以上问题, 已俨然成为新的事实标准, virtualenv...打包:python setup.py sdist 这样在文件夹中就多出了几个文件,在dist文件夹中的,logIn-1.0.0.tar.gz就是我们的发布包了; (2)....sdist 安装: sudo python setup.py install (--record files.txt) 卸载: sudo cat files.txt | sudo xargs rm...自动从网上下载安装所需的setuptools包. from setuptools import setup, find_packages setup( name = "HelloWorld",...version = "0.1", packages = find_packages(), # 常用,要熟悉 :会自动查找当前目录下的所有模块(.py文件) 和包(包含__init
用户在使用setuptools创建的包时,并不需要已安装setuptools,只要一个启动模块即可。...= "0.1", packages = find_packages(), ) 执行python setup.py bdist_egg即可打包一个test的包了。...,它默认在和setup.py同一目录下搜索各个含有init.py的包。...来排除它, find_packages(exclude=["*.tests", "*.tests.*", "tests.*", "tests"]) 使用entry_points 一个字典,从entry...python *.egg时,会执行我的test()函数,在文档中说需要将.egg放到PATH路径中。
不得不承认,在动手实践的过程,时间走得是最快的,在同一件事上花的时间越多也就越熟悉。...(exclude=('tests', 'docs')), classifiers=( "Programming Language :: Python :: 3",...$ python3 -m pip install --upgrade setuptools wheel $ python3 setup.py sdist bdist_wheel $ pytree dist...---- 注意 find_package()也是一个深坑,第一个参数如果写成find_packages('pytree', exclude=...)...但是如果改成console_scripts': ['pytree = cli:main'],因为cli在pytree/pytree底下,所以就能成功执行。当然这是一种错误的写法。
本文链接:https://blog.csdn.net/xc_zhou/article/details/102488021 1、在你的项目文件夹的工作目录下,新建setup.py文件,然后在里面添加如下内容...blog.csdn.net/xc_zhou', # 可以写github上的地址,或者其他地址 # 包内需要引用的文件夹 # packages=setuptools.find_packages(exclude...Python :: 3.6', 'Topic :: Software Development :: Libraries' ], zip_safe=True, ) 2、在setup.py...目录下执行 python setup.py sdist 最终生成一个dist文件夹,在文件夹里面就有一个创建好的安装包,格式为xxx.tar.gz的压缩包 3、安装xxx.tar.gz包 pip install...xxx.tar.gz 4、检查是否安装成功 pip list # 显示所有已安装的包 参考:https://blog.csdn.net/weixin_43922901/article/details
领取专属 10元无门槛券
手把手带您无忧上云