首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

随setuptools打包的Python在安装时不包含源代码

是因为setuptools是Python的一个常用工具包,用于打包和分发Python项目。当使用setuptools打包Python项目时,它会将项目的源代码和依赖项打包成一个可执行的安装包,以便用户可以方便地安装和使用。

然而,由于源代码通常包含大量的文件和目录,将其包含在安装包中会增加安装包的大小和安装时间。为了减小安装包的大小和提高安装效率,setuptools默认情况下不会将源代码包含在安装包中。

尽管如此,用户仍然可以通过其他方式获取源代码。一种常见的方式是在项目的代码托管平台(如GitHub)上查找项目的源代码库。另外,一些项目也会提供源代码的压缩包或者源代码的下载链接,用户可以通过这些方式获取源代码。

对于Python开发者来说,使用setuptools打包Python项目可以方便地将项目分享给其他人,并且可以通过PyPI等Python包管理工具进行分发和安装。同时,setuptools还提供了一些其他功能,如定义项目的依赖关系、生成可执行脚本等。

腾讯云提供了一系列与Python开发和云计算相关的产品和服务,例如云服务器、云函数、容器服务等,可以帮助开发者在云端部署和运行Python项目。具体的产品介绍和使用方法可以参考腾讯云官方文档:腾讯云产品与服务

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

2021年,你应该知道的Python打包指南

setup.py 真难写 似乎从有 Python 打包以来就有了setuptools这个库,你能搜到的教程,涉及打包发布的,都会让你编写那个可怕的setup.py。...包含 data 文件 或者 指定源代码结构,如果你使用的是src/存放包的源码这种项目结构,可以: 打包上传和安装 打包 好了,这个万恶的setup.py我已经写好了,咱要发布 PyPI 了。...上传 可能有老的教程,让你直接用python setup.py sdist bdist_wheel register upload打包上传一步到位,这个方式已经过时了不推荐使用。...属性,判断是否与当前 Python 版本兼容,加入候选列表 若是源代码包,直接加入候选列表 最终在候选列表中优先选择 whl 文件为待安装的包,将包下载到本地,候选包的选择可以由pip install的...是在本地时使用。)

1.7K10

Python的Build Tools详解

(二)打包和分发Setuptools 可以将项目打包成各种格式,如源代码包和二进制包。...当你创建一个新的 Poetry 项目或在现有项目中安装依赖项时,Poetry 会创建一个新的虚拟环境,并将依赖项安装到这个环境中。...在虚拟环境中,你可以使用项目的依赖项和开发工具。四、FlitFlit 是一个简单、轻量级的 Python 打包工具。它专注于提供一种简洁、快速的方式来打包和发布 Python 项目。...我们还指定了一个自定义脚本,它可以在安装项目后通过命令行调用。(二)打包和发布Flit 可以将项目打包成源代码包和二进制包。...五、比较和选择Setuptools、Poetry 和 Flit 都是优秀的 Python 构建工具,它们各有优缺点。在选择构建工具时,需要考虑以下因素:(一)功能需求不同的项目可能有不同的功能需求。

1.2K20
  • Python命名空间包

    命名空间包是对相关的包或模块进行分组的一种方法,通常是一个被忽略的功能,它对于在较大的项目中构建打包生态系统非常有用。...,例如添加 templating,则需要将其包含在 acme 的源代码树中,如下所示:$tree acme/acme/├───acme│ ├───__init__.py│ ├───sql...注意,独立的源代码树不足以在 Python 中创建命名空间包,如果不想让包之间相互覆盖,就需要做一些额外的工作,此外,正确的处理方式也会随着 Python 版本的不同而有所不同。...简单来说,对于每一个包含 Python 包或模块(也包括命名空间包)的目录来说,如果其不包含 __init__().py 文件,那么它就被看做是命名空间包。...例如,前面所说的 acme 在 Python 3.3 以及更高版本中,就是一个命名空间包。

    1.9K10

    通过demo学习OpenStack开发

    disutils2 在setuptools项目发展的过程中,有一个叫disutils2的项目也在并行开发中,其目的是全面取代Python标准库中的distutils。....egg格式:这个本质上也是一个压缩文件,只是扩展名换了,里面也包含了项目元数据以及源代码。这个格式由setuptools项目引入。...pip项目提供了很好的软件包安装方式,并且已经被包含到Python 3.4中,可以从PyPI、tarball或者Wheel归档中安装和卸载软件按包。...采用这种方式的时候,在安装目录下只会创建一个包含软件包信息的文件,真正的代码不会安装到系统目录下。...: 源代码放在子目录webdemo/下 然后包含了软件包管理的所需的文件:setup.py, setup.cfg, requirements.txt LICENSE和README 软件包管理相关 首先是

    1.3K11

    详解RemoveError: setuptools is a dependency of conda and cannot be removed from

    当你使用Conda创建或管理环境时,Conda会自动安装setuptools作为一个必要的依赖项。这样可以确保在使用Conda安装其他软件包时,setuptools可用于正确构建和安装它们。...创建一个新的环境如果你确实需要移除setuptools,那么一个更好的方法是创建一个新的Conda环境,并在这个新环境中不包含setuptools。...还可以指定包的依赖项,以确保在安装时满足依赖关系。生成源代码和二进制发行版:通过 setuptools,你可以轻松地将你的代码打包为源代码和二进制发行版,以便其他人可以方便地安装和使用你的包。...管理和安装依赖项:setuptools 允许你指定包的依赖项,以确保依赖的软件包也能同时安装。这样可以避免在使用你的软件包时出现依赖缺失的问题。...生成和安装可执行文件:使用 setuptools,你可以将 Python 脚本转换为可执行文件,并安装到系统路径中,从而方便用户在命令行中直接运行你的程序。

    1.4K10

    python项目打包发布总结

    /key_projects/#setuptools 简介 distutils - Python自带的基本安装工具, 适用于非常简单的应用场景使用, 不支持依赖包的安装   通过distutils来打包...存放在/usr/local/lib/python2.7/dist-packages目录中 手动从源代码安装的package存放在site-packages目录中 一、distutils 新建文件夹(例如...=’logIn’, #这个是最终打包的文件名 version=’1.0.0’, py_modules=[‘logInr’], #要打包哪些,.py文件, ) 保存退出 在命令行下,进入该文件夹...打包:python setup.py sdist 这样在文件夹中就多出了几个文件,在dist文件夹中的,logIn-1.0.0.tar.gz就是我们的发布包了; (2)....() # 这两行是当setuptools不存在时,自动从网上下载安装所需的setuptools包. from setuptools import setup, find_packages setup

    1.1K20

    【python】项目打包发布

    key_projects/#setuptools 简介 distutils - Python自带的基本安装工具, 适用于非常简单的应用场景使用, 不支持依赖包的安装    通过distutils来打包...存放在/usr/local/lib/python2.7/dist-packages目录中 手动从源代码安装的package存放在site-packages目录中 一、distutils 新建文件夹(例如...打包:python setup.py sdist  这样在文件夹中就多出了几个文件,在dist文件夹中的,logIn-1.0.0.tar.gz就是我们的发布包了; (2)....rm -rf 二、setuptools: setuptools 只是对distutils 的增强, 其使用过程还是一样: 编辑: 先在项目主目录下编辑setup.py, 打包: python setup.py...() # 这两行是当setuptools不存在时,自动从网上下载安装所需的setuptools包. from setuptools import setup, find_packages setup

    1.5K40

    如何制作whl文件「建议收藏」

    按照官网说法,wheels是发行版Python的新标准并且要取代.egg。 Egg格式是由setuptools在2004年引入,而Wheel格式是由PEP427在2012年定义。...distutils和setuptools工具 用来Python环境中构建和安装额外的模块,模块可以基于Python,也可以C/C++写的扩展模块,可以是python包,包中包含了C和Python编写的模块....py print2.py setup.py README.txt 输入以下命令进行打包,制作source distribution(源代码发布包),此命令将会把所有内容在dist/目录打包为...-1.0.0.tar.gzt包进行上传,twine为Python包需要安装: twine upload dist/* 制作python包为wheel文件 wheel是一个已经编译好的包,在安装时不需要编译过程...,安装whl文件时要比发布的源文件安装要快。

    3K10

    pyinstaller打包python项目

    5. pip & Wheel优点:pip是Python的标准包管理器,结合wheel格式,可以方便地打包和分发纯Python库,不涉及GUI应用。在Python环境中易于安装和升级。...6. setuptools & distutils优点:这两个模块是Python标准库的一部分,用于构建和分发Python包,提供了一种标准化的方式来组织和打包代码以便在各种环境下安装。...否则会将真实环境中很多不需要的依赖也打包进去,造成打包后的程序过大2. 定位到你的Python源代码文件使用cd命令切换到包含主Python脚本(例如:main.py)的目录。3....这通常是由于以下原因导致:Python环境不匹配: 打包时使用的Python版本与目标机器上的Python版本不一致,或者目标机器上根本未安装该版本的Python。...打包参数不足: 确保在打包时使用了正确的参数来确保所有依赖都被包含在内。

    47110

    Python:whl安装包简介与制作

    按照官网说法,wheels是发行版Python的新标准并且要取代.egg。 Egg格式是由setuptools在2004年引入,而Wheel格式是由PEP427在2012年定义。...distutils和setuptools工具 用来Python环境中构建和安装额外的模块,模块可以基于Python,也可以C/C++写的扩展模块,可以是python包,包中包含了C和Python编写的模块....py setup.py README.txt 输入以下命令进行打包,制作source distribution(源代码发布包),此命令将会把所有内容在dist/目录打包为pagtest-1.0.0...-1.0.0.tar.gzt包进行上传,twine为Python包需要安装: twine upload dist/* 三、制作python包为wheel文件 wheel是一个已经编译好的包,在安装时不需要编译过程...,安装whl文件时要比发布的源文件安装要快。

    68610

    Python: 制作可通过pip安装的zip格式的Python库

    在Python开发过程中,将自己的库打包并通过pip进行安装是一项重要的技能。这篇文章将详细讲解如何制作一个zip格式的Python库,并确保它可以通过pip安装。...tests/ 目录包含测试代码。 README.md 是项目的说明文件。 setup.py 是打包和安装的配置文件。 requirements.txt 包含依赖的第三方库。 2....编写setup.py setup.py 是Python打包工具setuptools使用的配置文件,定义了如何打包和分发我们的库。...编写README.md README.md 文件通常是用Markdown编写的项目说明文档,包含项目的基本信息、安装方法、使用示例等。...打包项目 在终端中导航到项目的根目录,并运行以下命令: sh python setup.py sdist 此命令将创建一个包含我们的库的源代码分发包,通常位于dist/目录中,例如dist/example_package

    19610

    setup.py即将下岗,PEP 518 说明继任者

    但是当一个项目选择使用setuptools时,像setup.py这样的可执行文件的使用就成了一个问题。你无法在不知道setup.py文件依赖关系的条件下执行它。...此解决方案有许多问题,例如: 除了setuptools本身,没有工具可以在不执行setup.py的情况下访问这些信息,但是如果不安装这些项目,setup.py将无法执行。...所有这一切使得pip [4]假定在执行setup.py文件时setuptools是存在的。但问题在于,如果另一个项目像setuptools那样开始在社区中获得关注,这个项目就没有可扩展性。...不过,python语法是Python特有的格式,我们预计这些数据可能需要通过不是用Python编写的打包工具等来读取。 提议的Python语法文件示例如下: ?...(项目和包的区别) pydevelop.toml 该文件可能包含非特定于开发的细节。 pysource.toml 与源代码没有直接关系。

    1.9K70

    Python打包系统简单入门

    安装 最常用的命令就是安装了,除此以外还可以指定版本号: $ pip install SomePackage # 不指定版本号,安装最新版 $ pip install SomePackage...打包项目 下面就进入本文的正题,Python的打包系统上。基本上我们不需要完全了解打包系统,只要学会简单的几个点就可以打包自己的类库了。...清单文件,当项目中需要一些没办法自动包括到源代码分发包的文件时,可能需要用到它。 具体文件内容就不列出了。...setuptools提供的工具链可以在安装项目分发包的时候将这些接口转化为真正的可执行脚本,更多信息参考setuptools文档 - Automatic Script Creation。...源码分发包(sdist) 这是最低等级的一种,基本上就是复制源代码,不过因此在安装的时候有一个必须的构建(可能包括编译)过程来生成各种元信息,哪怕项目是纯的Python项目。

    99430

    Python打包-setuptools

    setuptools Python打包分发工具setuptools:曾经 Python 的分发工具是 distutils,但它无法定义包之间的依赖关系。...setuptools使用 pip 安装: $ pip install setuptools 第一个安装文件 在目录 learn\_setup 下新建安装文件 setup.py,然后创建包 myapp.../*.yml'], } 如果不指定作为目录的键为空串,则代表对所有模块操作(下例中将包含所有包内 data 目录下的 yaml 文件): package_data={ '': ['data/*..../tutorials/d… 其他初始化文件 在阅读 Github 上的 Python 库时,除了最基本核心的 setup.py 文件和主程序之外,还会看到其他一些文件。...默认打包的文件:README.rst/README.md、setup.cfg、MANIFEST.in 所以其他的文件,如 LICENSE.txt,在源码包时需要手动在 MANIFEST.in 里添加

    1.2K20

    Python开发者必备6个基本库

    为了解决这个问题,PyPy 5.9对CFFI库(见下文)和PyPy的Python C API兼容层进行了改进。 此外,在5.9版本中,PyPy的JSON解析器在处理多种JSON对象时明显更快。...Setuptools是用于打包Python项目的标准问题Python子系统。管理给定项目的安装工具可能变得非常繁琐,特别是在自动生成需求,管理文档文件或编辑项目贡献者数据时。...Python PBR特点 PBR是Python Build Reasonableness的缩写,是一种以一致的方式管理Setuptools打包的库。...它可以自动化Setuptools打包的许多方面,例如版本号,生成作者和变更文件,以及生成Sphinx风格的文档。...Python PBR下载地址 PBR可用pip install pbr命令在Python包索引安装。源代码在GitHub上可查找。 项目五:WxPython 什么是WxPython?

    1.5K10

    【Python基础】08、Python模

    一、python模块 1、python文件  可以将代码量较大的程序分割成多个有组织的、彼此独立但又能互相交互的代码片段,这些自我包含的有组织的代码段就是模块      模块在物理形势上表现为以.py...在一个模块的顶层定义的所有变量都在被导入时成为了被导入模块的属性 2、python程序架构  一个Python程序通常包含一个顶层程序文件和其它的模块文件(0个,1个或多个)         顶层文件...    模块可内含变量,函数以及类来进行其工作,而函数和类可以包含变量和其它元素 4、导入模块      在导入模块时只能使用模块名,而不能使用带.py后缀的模块文件名  import语句:      ...#c头文件 打包成windows下安装文件exe格式(需在windows环境下):python setup.py bdist_wininst 打包成linux下rpm安装文件格式(需在有rpm环境下):...与它已经成为一对好搭档; 安装pip: Pip的安装可以通过源代码包,easy_install或者脚本 下面介绍一下各种安装方法: 源代码方式: $ wget http://pypi.python.org

    1.8K10

    python的构建工具setup.py的方法使用示例

    一、构建工具setup.py的应用场景在安装python的相关模块和库时,我们一般使用“pip install 模块名”或者“python setup.py install”,前者是在线安装,会安装该包的相关依赖包...所以在安装普通的python包时,利用pip工具相当简单。...但是在如下场景下,使用python setup.py install会更适合需求:在编写相关系统时,python 如何实现连同依赖包一起打包发布?...打包时需要打包的数据文件,如图片,配置文件等--scripts 安装时需要执行的脚步列表--package_dir 告诉setuptools哪些目录下的文件被映射到哪个源码包。...setuptools的解决方法python在Windows下安装setuptools(easy_install工具)步骤详解33个Python爬虫项目实战(推荐)关于python3中setup.py小概念解析

    5.8K10

    统计学习方法 Python 库

    它告诉 setuptools 你的包(例如名称和版本)以及要包含的代码文件。 打开 setup.py 并输入以下内容,更新软件包名称以包含您的用户名。...确保您拥有 setuptools 并 wheel 安装了最新版本: python3 -m pip install --user --upgrade setuptools wheel # 不在虚拟环境时...python3 -m pip install --upgrade setuptools wheel # 在虚拟环境不需要 --user 小提示 如果您在安装它们时遇到问题,请参阅 安装包 教程。...该 tar.gz 文件是 源存档, 而该 .whl 文件是 构建的分发。较新的 pip 版本优先安装构建的发行版,但如果需要,将回退到源代码存档。您应该始终上传源存档并为项目兼容的平台提供构建的存档。...由于 TestPyPI 与实时 PyPI 没有相同的包,因此尝试安装依赖项可能会失败或安装意外的事情。虽然我们的示例包没有任何依赖关系,但在使用 TestPyPI 时避免安装依赖项是一种很好的做法。

    1K30
    领券