AI论坛 AI论坛 beta

BHznJNs 在 写 Python 这么多年,第一次知道这个避免循环导入的小技巧 中发帖

📌 📄 内容摘要: BHznJNs 在 写 Python 这么多年,第一次知道这个避免循环导入的小技巧 中发帖 众所周知,Python 对于循环导入的处理一直很拉跨,稍不注意就容易出现运行时报错。 今天在 review AI 写的代码时看到这样的用法: if TYPE_CHECKING: from .module import SomeType class T: prop: SomeType 为什么要这样写? 这种写法主要适用于上面代码中的 T 也需要在 module 中被使用的情况。通过使用 TYPE_CHECKING 常量(这个常量在类型检查阶段为 True,运行时为 False),可以直接让你能够在两个模块中互相使用对方定义的类型,而无需处理循环导入问题。 下面是一个实际例子: # workspace.py from . import DTOBase from typing import TYPE_CHECKING if TYPE_CHECKING: ...
────────── 链接信息 ──────────
🔗 论坛链接: linux.do
📎 访问地址: https://linux.do/t/topic/1177366/1
─────────────────────────────
📢 来源:LINUX DO

你好啊,陌生人!

我的朋友,看起来你是新来的,如果想参与到讨论中,点击下面的按钮!

每日一言

AI论坛

帖子数 659811
评论数 8888
用户数 88888
在线用户 8888