sách gpt4 ai đã đi

Python: import * chỉ nhập những thứ nhất định từ một gói?

In lại 作者:行者123 更新时间:2023-12-04 16:50:37 31 4
mua khóa gpt4 Nike

我有一个名为 elements 的包,其中包含按钮、trifader、海报等内容。在 Button 类中,我正在执行 from elements import *

这执行正常,当我尝试 print(poster) 时,也可以正常运行并按预期运行。但是,当我执行 print(trifader) giờ,NameError: name 'trifader' is not defined。即使trifader和poster在同一个包中,也定义了poster,但trifader不是吗?多么奇怪。对此有什么解释吗?

elements包的目录结构是这样的:

Elements:
__init__.py
trifader.py
button.py
poster.py

此外,还有其他一些不太相关的内容。

每个 .py 文件都包含一个以 .py 名称命名的类,例如,trifader.py 有一个名为 TriFader 的类。

1 Câu trả lời

如果您的 __init__.py 没有定义 __all__(因此限制了使用 from X import * 导入的内容),那么您可能在某个地方有一个循环 nhập khẩu 导致模块在其定义被评估之前被引用。

关于Python:导入 * 只从包中导入某些东西?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13280916/

31 4 0
行者123
Hồ sơ cá nhân

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá Didi Taxi miễn phí
Mã giảm giá Didi Taxi
Giấy chứng nhận ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com