我应该如何为此设置python软件包

问题描述 投票:0回答:1

我正在创建一个计划放在Github上的工具。这是非常笼统的,但是我还想包括一些用法示例。因此,我设置了以下文件夹结构。

此工具适用于python 3。

repository/
   commonTool.py
   commonTool2.py
   specificUsage/
     runTheSpecificUsage.py
     helpRunTheSpecificUsage.py

现在specificUsage/文件夹中的两个脚本都将在commonTool.py和commonTool2.py中导入方法。

我的问题是理想情况下用户可以使用

python repository/specificUsage/runTheSpecificUsage.py

但是我无法使它正常工作。它永远无法导入其上方文件夹中的功能。我曾尝试过各种有关如何从超级文件夹导入文件的各种文章,但运气不佳。

我应该如何设置这些文件夹?我应该有一个init。py还是两个?在哪里?

python
1个回答
0
投票

您可以与setup.pycommonTool.py一起在顶层创建commonTool2.py。在setup.py中,放入以下行:

import setuptools
setuptools.setup(packages=setuptools.find_packages())

然后将__init__.pyspecificUsage/置于相同的级别。您应该可以像这样从specificUsage导入:

import commonTool

[您可能还想考虑Python对模块和包具有强大的命名约定,并且通常对驼峰式皱眉。如果愿意,可以阅读更多here

© www.soinside.com 2019 - 2024. All rights reserved.