Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/320.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 阅读setup.py中的自述文件_Python_Setuptools_Distutils_Setup.py - Fatal编程技术网

Python 阅读setup.py中的自述文件

Python 阅读setup.py中的自述文件,python,setuptools,distutils,setup.py,Python,Setuptools,Distutils,Setup.py,因此,我希望安装脚本的long\u描述是我的README.md文件中的内容。但是当我这样做时,源代码发行版的安装将失败,因为python setup.py sdist不会复制自述文件 有没有办法让distutils.core.setup()使用sdist命令包含README.md文件,以便安装不会失败 我尝试了一种小的解决方法,当README.md文件不可用时,我默认使用一些较短的文本,但我确实希望PyPi不仅能够获取自述文件的内容,而且能够获取安装包的用户的内容。要在分发版中手动包含文件,请执

因此,我希望安装脚本的
long\u描述
是我的
README.md
文件中的内容。但是当我这样做时,源代码发行版的安装将失败,因为
python setup.py sdist
不会复制自述文件

有没有办法让
distutils.core.setup()
使用
sdist
命令包含
README.md
文件,以便安装不会失败


我尝试了一种小的解决方法,当
README.md
文件不可用时,我默认使用一些较短的文本,但我确实希望PyPi不仅能够获取自述文件的内容,而且能够获取安装包的用户的内容。

要在分发版中手动包含文件,请执行以下操作:

  • 设置
    include\u package\u data=True

  • 创建MANIFEST.in文件,该文件包含项目根目录中要包含的每个文件的
    include
    行列表。您可以使用
    recursive include
    从项目根目录的子目录中进行包含


  • 不幸的是,这方面的文档非常零碎,并且在Python distutils、setuptools和旧的distribute文档中分割开来,因此很难确定您需要做什么。

    这对我来说也很有效,尽管我只使用了第2点(第1点似乎是多余的)。如果您使用setuptools,文档不再零碎,这是目前的实际包装标准。请参见此处:@Marconius移到此处:我建议忽略
    1.
    ,因为它也会包含
    .pyc
    文件。