如何从Python包中导入模块

2024-04-20 01:22:42 发布

您现在位置:Python中文网/ 问答频道 /正文

一般来说,我对Python和编程都很陌生,对包有点问题。你知道吗

我创建了一个名为Package\u Test的目录,并在其中创建了一个名为TestPackage的文件,名为FUNCTIONS。你知道吗

这个包包含init文件和一个add文件。add包含一个函数,也称为add,它返回两个给定数字的和。你知道吗

目录树如下所示:

Package_Test

Test

FUNCTIONS

init

add

我想使用文件Test中的包中的add函数并尝试下面的代码,但总是得到错误

Traceback (most recent call last): File "D:/CLRS_Codes/PACKAGE_TEST/Test.py", line 1, in import FUNCTIONS File "D:\CLRS_Codes\PACKAGE_TEST\FUNCTIONS__init__.py", line 2, in from add import add ModuleNotFoundError: No module named 'add'

在我写的add文件中:

def add(x, y):

    return x + y

init文件中,我写道:

from add import add

在我写的测试文件中:

import FUNCTIONS

print(add(4,2))

我附上一张照片,使整个事情更清楚。你知道吗

我非常感谢你的帮助。你知道吗

The Test-file


Tags: 文件函数pytestimport目录addpackage
2条回答

您可以使用import FUNCTIONS.add.add as addfrom FUNCTIONS.add import add。这两种方法都允许您每次按add函数的全名引用它。你知道吗

首先,清空初始化文件。你知道吗

然后在测试.py将“导入函数”更改为:

  1. 导入函数.add
    • 这意味着您需要调用该文件中的任何函数作为“FUNCTIONS.add.function\u名称(参数)
    • 例如,示例中的add函数将通过函数.add.add(数字1,数字2)
  2. 从函数.add导入*
    • 这将允许您以“function\u name(arguments)”的形式调用该文件中的任何函数
    • 示例中的add函数将通过“add(number1,number2)”调用

相关问题 更多 >