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

如何使用setuptools在Python3.6的库分发中包含父文件夹结构?

在Python3.6的库分发中,可以使用setuptools来包含父文件夹结构。setuptools是Python的一个常用工具,用于构建、分发和安装Python软件包。

要在库分发中包含父文件夹结构,可以按照以下步骤进行操作:

  1. 首先,在你的项目根目录下创建一个名为setup.py的文件,用于定义你的软件包的元数据和依赖关系。
  2. setup.py文件中,导入setuptools模块,并使用setup()函数来配置你的软件包。在setup()函数中,可以指定软件包的名称、版本号、作者、描述等信息。
  3. setup()函数中,使用packages参数来指定你要包含的包。可以使用find_packages()函数来自动查找并包含所有的子包。如果你想包含父文件夹结构,可以使用include参数来指定需要包含的文件夹。
  4. 例如,如果你的项目结构如下所示:
  5. 例如,如果你的项目结构如下所示:
  6. 要包含data文件夹,可以在setup()函数中使用如下代码:
  7. 要包含data文件夹,可以在setup()函数中使用如下代码:
  8. setup.py文件所在的目录下,打开命令行终端,并执行以下命令来构建你的软件包:
  9. setup.py文件所在的目录下,打开命令行终端,并执行以下命令来构建你的软件包:
  10. 这将会在dist文件夹下生成一个压缩包,其中包含了你的软件包及其依赖关系。
  11. 如果你想将你的软件包上传到PyPI等Python包索引网站,可以执行以下命令来上传:
  12. 如果你想将你的软件包上传到PyPI等Python包索引网站,可以执行以下命令来上传:
  13. 这将会将你的软件包上传到PyPI,并使其可以通过pip install命令进行安装。

通过以上步骤,你可以使用setuptools在Python3.6的库分发中包含父文件夹结构。请注意,以上步骤仅为一种常见的做法,实际操作可能会因项目结构和需求而有所不同。

关于setuptools和Python库分发的更多信息,你可以参考腾讯云的相关文档和教程:

  • setuptools官方文档:https://setuptools.pypa.io/
  • 腾讯云Python开发者中心:https://cloud.tencent.com/developer/section/1135619
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

python之模块和包

四 模块和包 1 模块 普通文件天然是一个模块 创建一个普通文件夹,其是一个模块,无法在文件夹上写代码 添加一个模块n ?...结论: 使用频率高文件中,使用频率多的应该放置在_init_.py中,因为模块在初始化过程中总会加载目录中的_init_.py文件及其中的内容,但其不会执行和导入其他相关子模块 ---- 若目录对应的...,最好不要删除它(低版本不可删除) ---- 导入子模块一定会加载父模块,但导入父模块一定不会加载子模块 ---- 包之间只能使用.点号作为间隔符,表示模块及子目录的层级关系 ---...---- 本地使用的方式: 1 将模块或包放置到sys.path的搜索路径中即可 2 将此模块所在的路径加入到sys.path中即可,因为其是一个列表 2 主要工具 1 distutils 官方库...,对应的是/root/.pyenv/versions/zhangbing/lib/python3.6/site-packages 4 命令分发 1 sdist命令简介 创建源代码的分发包 产生一个

1.4K10
  • 如何使用FindFunc在IDA Pro中寻找包含指定代码模式的函数代码

    关于FindFunc  FindFunc是一款功能强大的IDA Pro插件,可以帮助广大研究人员轻松查找包含了特定程序集、代码字节模式、特定命名、字符串或符合其他各种约束条件的代码函数。...简而言之,FindFunc的主要目的就是在二进制文件中寻找已知函数。  使用规则过滤  FindFunc的主要功能是让用户指定IDA Pro中的代码函数必须满足的一组“规则”或约束。...格式将规则存储/加载到文件; 6、提供了用于实验的单独选项页; 7、通过剪贴板在选项页之间复制规则(格式与文件格式相同); 8、将整个会话(所有选项页)保存到文件; 9、指令字节的高级复制;  工具要求...广大研究人员可以直接使用下列命令将该项目源码克隆至本地: git clone https://github.com/FelixBer/FindFunc.git 接下来,将项目中的findfuncmain.py...文件拷贝到IDA Pro的插件目录中即可。

    4.2K30

    Python多环境扩展管理-Virtua

    这段可以跳过,看下面的小节,直接干 命令使用格式如下: virtualenv [选项] 目标目录 最基本的用法,创建虚拟目录就是这样: virtualenv /opt/ansible/venv 上面的命令将会创建指定的文件夹...,包含了Python可执行文件,以及 pip 库的一份拷贝。...如果你的本地 pip 库已经装了别的模块了,那么新的虚拟环境也会包含这些模块。如果不想这样,就要加上一些参数选项。...默认的Python解释器不是要使用的,就要用 -p 参数设置一下了。 默认使用的解释器,可能是根据 pip 来决定的。我试的时候,CentOS默认有python2.7,我又安装了python3.6。...使用python命令启动的是python2.7。但是python2.7没有安装 pip , pip 是安装在 python3.6 下的。

    82520

    python之本地模块包使用和创建

    install xxxx -U 查看已安装的包: pip list python项目 一个完整的结构需要满足以下的条件: 拥有一个在版本管理之下的源码目录 程序信息在setup.py中定义 在一个...virtualenv环境中运行 如何制作自己的安装包 如何让自己写的包能被人当作第三方库安装?...用户在使用setuptools创建的包时,并不需要已安装setuptools,只要一个启动模块即可。 使用时使用import setuptools导入即可..../lib/python2.7/dist-packages/mytest-0.1-py2.7.egg就是刚才我们安装的自定义库.O(∩_∩)O 如何使用未安装的库使用本地的包(不经过安装的),需要执行如下步骤...第三章:python项目的结构和包的创建 导入他人写的Python包&创建自己的Python包 如何创建自己的python包 如何将自己的Python程序打包--setuptools详解 Python

    2.5K20

    怎样才算学会PythonPython 实践基础

    ,但是在REPL中编写应用程序并不合适,不合适的地方表现在代码不易组织(分模块)和代码没法记录(存盘)。...我们尝试用Python编写一个tree命令行(Command-Line Application),顾名思义,打印目录层级结构的程序,详细描述参看这篇命令行中 tree 的多重实现。...假设我们会把pytree作为应用程序分发出去供别人下载使用,那么标准的目录结构和构建脚本是必不可少的,Python自然有自己的一套解决方案。...使用TDD的方式实现了pytree核心的功能(源代码),然后考虑如何把它变成真正的命令行程序。...首先要解决的问题是如何以用户友好的方式显示需要哪些传入参数,我们期待pytree -h能提供一些帮助信息,为了不重复造轮子,挑选现成的Option解析库比较轻松。

    97920

    实战教程:如何将自己的Python包发布到PyPI上

    那我们如何将自己开发的一个包上传到PyPI,供其它人使用呢。...2.Python包发布步骤 下面就开始介绍如何将自己的Python项目发布到PyPI 2.1 创建目录结构 创建一个测试项目,例如project_demo,在该项目下,创建一个待发布的包目录,例如:package_mikezhou_talk...1、README.rst是关于项目的描述文件,一般包含怎样安装项目,怎样使用项目等。...必须是rst(reStructuredText) 格式的 packages:指定最终发布的包中要包含的packages。...1、准备好上面的步骤, 一个包就基本完整了, 剩下的就是打包了,可以使用下面命令打包一个源代码的包: python setup.py sdist build 这样在当前目录的dist文件夹下, 就会多出一个

    2.8K30

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

    在Python开发过程中,将自己的库打包并通过pip进行安装是一项重要的技能。这篇文章将详细讲解如何制作一个zip格式的Python库,并确保它可以通过pip安装。...编写setup.py setup.py 是Python打包工具setuptools使用的配置文件,定义了如何打包和分发我们的库。...编写代码和测试 在example_package目录中编写我们的库代码。...打包项目 在终端中导航到项目的根目录,并运行以下命令: sh python setup.py sdist 此命令将创建一个包含我们的库的源代码分发包,通常位于dist/目录中,例如dist/example_package...结论 以上就是如何制作一个zip格式的Python库并通过pip安装的完整过程。通过按照这些步骤操作,我们可以将自己的Python库分享给其他开发者,并通过pip轻松安装和使用。

    19510

    requests库作者另一神器Pipenv的用法

    另外我们之前可能使用 requirements.txt 文件来标识项目所需要的依赖,但是这样会带来一些问题,如有的 requirements.txt 中只是将库名列出来了,没有严格指定版本号,这样就可能会导致不同时间安装的库版本是不同的...我们切换到 PipenvTest-VSTVh89E/bin 目录查看一下文件结构: 可以看到这里面包含了 pip、pip3、pip3.6、python、python3、python3.6 等可执行文件...,实际上目录结构和使用 virtualenv 时是完全一样的,只不过文件夹的位置不同而已。...这是因为新的虚拟环境是一个全新的 Python 环境,它默认只包含了 Python 内置的包以及 pip、wheel、setuptools 包,其他的第三方包都没有安装。...需要注意的是,在Python3.3中使用”venv”命令创建的环境不包含”pip”,你需要进行手动安装。在Python3.4中改进了这一个缺陷。

    85910

    在Android开发中如何使用OpenSL ES库播放解码后的pcm音频文件?

    一.认识OpenSL ES   OpenSL ES的全称是Open Sound Library For Embedded Systems,即应用于嵌入式系统的开源音频库。...支持pcm数据的采集和播放 支持播放的音频数据来源广泛,res、assets、sdcard、在线网络音频以及代码中定义的音频二进制数据   和Android提供的AudioRecord和AudioTrack...如果希望减少拷贝,开发更加高效的Android音频应用,则建议使用Android NDK提供的OpenSL ES API接口,它支持在native层直接处理音频数据。...二.使用OpenSL ES播放pcm音频数据的步骤   开发步骤如下: 创建引擎对象和接口 创建混音器对象和接口 创建播放器对象和接口 创建缓冲队列接口并给缓冲队列注册回调函数 设置播放状态,手动调用回调函数...absolutePath+File.separator+"input.pcm" playPcmBySL(pcmPath)   需要注意的是,pcm文件可以通过使用ffmpeg解码mp3文件得到,但是在解码的时候需要注意的是

    22510

    Centos 7.5 python3.6

    为了达到这个目标,Django 提供了通用Web开发模式的高度抽象,提供了频繁进行的编程作业的快速解决方法,以及为“如何解决问题”提供了清晰明了的约定。...views.py 处理用户发出的请求,从urls.py中对应过来, 通过渲染templates中的网页可以将显示内容,比如登陆后的用户名,用户请求的数据,输出到网页。...models.py 与数据库操作相关,存入或读取数据时用到这个,当然用不到数据库的时候 你可以不使用。...forms.py 表单,用户在浏览器上输入数据提交,对数据的验证工作以及输入框的生成等工作,当然你也可以不使用。...templates 文件夹 views.py 中的函数渲染templates中的Html模板,得到动态内容的网页,当然可以用缓存来提高速度。

    76430

    Setuptools 【Python工具包详解】

    什么是setuptools setuptools是Python distutils增强版的集合,它可以帮助我们更简单的创建和分发Python包,尤其是拥有依赖关系的。...用户在使用setuptools创建的包时,并不需要已安装setuptools,只要一个启动模块即可。...setuptools进阶 在上例中,在前两例中,我们基本都使用setup()的默认参数,这只能写一些简单的egg。...包含数据文件 在3中我们已经列举了如何包含数据文件,其实setuptools提供的不只这么一种方法,下面是另外两种 1)包含所有包内文件 这种方法中包内所有文件指的是受版本控制(CVS/SVN/GIT等...,可以还是使用3中提到的包含方法 可扩展的框架和应用 setuptools可以帮助你将应用变成插件模式,供别的应用使用。

    1.1K10

    通过demo学习OpenStack开发

    disutils2 在setuptools项目发展的过程中,有一个叫disutils2的项目也在并行开发中,其目的是全面取代Python标准库中的distutils。...先说一下pbr如何使用: import setuptools setuptools.setup(setup_requires=['pbr'], pbr=True) 按照上面的方式就可以配置setuptools...requirements.txt文件中包含了一个项目所要依赖的库,这个文件的格式是和pip兼容的。 利用Sphinx实现文档自动化。...但是,这些都不是官方支持的,存在元数据和包结构彼此不兼容的问题。因此,为了解决这个问题,PEP 427定义了新的分发包标准,名为Wheel。目前pip和setuptools工具都支持Wheel格式。...这些目录的内容就是这个库的元数据,是从库的分发包中拷贝出来的。其中.egg-info类型的目录来自于Egg格式的分发包,.dist-info类型的目录来自于Wheel格式的分发包。

    1.3K11

    Pytorch源码编译简明指南

    目录结构 以下是Pytorch源码包展开的目录结构(只展示了主要的一些文件夹),其中主要的源码都在以下展示的文件夹中: 其中使用红箭头标注的就是几个比较重要的核心库。...Aten中的代码移至这个文件夹,也就是说这个文件夹将包含Pytorch中最核心的代码。...torch文件夹也同样重要,其中主要包含了一些稍微高层些的操作函数,例如torch.ones等,有C++和Python端,也包括了Python核心代码和包装代码,如果我们使用python版Pytorch...在我们编译Pytorch源码的过程中会使用到这个文件夹中的代码。...Pytorch的安装程序会自动查找当前环境中是否有ninja,如果有的话,则优先使用ninja进行编译。 不同的安装模式 只安装libtorch库:创建build文件夹,在里头执行python ..

    2.9K40

    Python包管理工具setuptools

    什么是setuptools setuptools是Python distutils增强版的集合,它可以帮助我们更简单的创建和分发Python包,尤其是拥有依赖关系的。...用户在使用setuptools创建的包时,并不需要已安装setuptools,只要一个启动模块即可。...package_data = { # 任何包中含有.txt文件,都包含它 '': ['*.txt'], # 包含demo包data文件夹中的 *....包含数据文件 在上面我们已经列举了如何包含数据文件,其实setuptools提供的不只这么一种方法,下面是另外两种 1)包含所有包内文件 这种方法中包内所有文件指的是受版本控制(CVS/SVN/GIT等...,可以还是使用3中提到的包含方法 可扩展的框架和应用 setuptools可以帮助你将应用变成插件模式,供别的应用使用。

    1.7K20

    Requests库作者Kenneth Reitz的另一神作!虚拟环境及包管理工具Pipenv!

    virtualenv 在使用时我们需要手动创建一个虚拟环境然后激活,Pipenv 会自动创建。...另外我们之前可能使用 requirements.txt 文件来标识项目所需要的依赖,但是这样会带来一些问题,如有的 requirements.txt 中只是将库名列出来了,没有严格指定版本号,这样就可能会导致不同时间安装的库版本是不同的...可以看到这里面包含了 pip、pip3、pip3.6、python、python3、python3.6 等可执行文件,实际上目录结构和使用 virtualenv 时是完全一样的,只不过文件夹的位置不同而已...这是因为新的虚拟环境是一个全新的 Python 环境,它默认只包含了 Python 内置的包以及 pip、wheel、setuptools 包,其他的第三方包都没有安装。...Pipfile.lock 详细标识了该项目的安装的包的精确版本信息、最新可用版本信息和当前库文件的 hash 值,顾明思义,它起了版本锁的作用,可以注意到当前 Pipfile.lock 文件中的 Django

    1.4K80
    领券