2024-05-14 03:16:21 发布
网友
基本上,我的python包的设置如下:
module \_examples \_folder1 \_file1.py \_file2.py \_folder2 \_file1.py \_file2.py
基本上我只想用:
package_data = { 'module': ['examples/*'], },
因为我的项目总是有人添加示例,我希望从我的应用程序中很容易列出这些示例。我可以为示例中的任何文件工作,但不能通过子目录重新诅咒。这可能吗?
你得用一个^{}文件。
我相信你会想要这样的东西:
$ cat MANIFEST.in recursive-include examples/ *.py
我相信你要找的是类似这样的东西,setup.py,它将递归地找到项目中的任何包,也请确保为每个包的子目录包含__init__.py文件。
setup.py
__init__.py
from setuptools import setup, find_packages setup(name='MySoftware', packages=find_packages() )
我看到这篇文章,花了一些时间研究如何将特定的子模块添加到我的包中,所以我将在这里发布我的解决方案。
在我的包根文件夹中,我有一个setup.py文件see doc 在这个文件中,我有以下代码:
from setuptools import setup with open("README.md", "r") as fh: long_description = fh.read() setup( name='package name', version='0.4.1', description='short description', long_description=long_description, long_description_content_type="text/markdown", url='repository url', author='My name', author_email='my@e.mail', license='MIT', packages=['PackageName','PackageName.SubModule'], zip_safe=False, install_requires=[ 'dependecy1', ], classifiers=[ 'Development Status :: 3 - Alpha', 'License :: OSI Approved :: MIT License', 'Programming Language :: Python :: 3.7' ] )
回答这个问题的有趣部分是: packages=['PackageName','PackageName.SubModule'],
packages=['PackageName','PackageName.SubModule'],
通过遵循此语法,您可以将子模块包含到主包发行版中。
有关所有其他参数的详细信息可以在doc中找到。
你得用一个^{} 文件。
我相信你会想要这样的东西:
我相信你要找的是类似这样的东西,
setup.py
,它将递归地找到项目中的任何包,也请确保为每个包的子目录包含__init__.py
文件。导言
我看到这篇文章,花了一些时间研究如何将特定的子模块添加到我的包中,所以我将在这里发布我的解决方案。
解决方案
在我的包根文件夹中,我有一个
setup.py
文件see doc在这个文件中,我有以下代码:
回答这个问题的有趣部分是:
packages=['PackageName','PackageName.SubModule'],
通过遵循此语法,您可以将子模块包含到主包发行版中。
有关所有其他参数的详细信息可以在doc中找到。
相关问题 更多 >
编程相关推荐