有时候,一个看似未被使用的 Python 模块导入实际上是程序正常运行所必需的。看起来没有使用到的导入会引起像 PyFlakes 这样的工具产生虚假的消息,并且可能吸引过于热心的程序员的注意。例如,C++ 有一个(自 C++ 11 以来)习惯用法来表明这一点,即使用
我特别在 Flask 等 Web 框架的上下文中提出这个问题,因为这种情况经常发生。例如,下面这段来自 Flask 应用程序的样板代码是其正常运行所必需的:
有没有更加明确意图且更符合Python风格的方法来实现这个?
[[unused]]
属性(C++ 17 引入了 [[maybe_unused]]
)。我特别在 Flask 等 Web 框架的上下文中提出这个问题,因为这种情况经常发生。例如,下面这段来自 Flask 应用程序的样板代码是其正常运行所必需的:
from app import auth_routes, app, db
from app.resources import api
我通常通过
来处理这种情况。import X
assert X is not None # Explanatory comment
有没有更加明确意图且更符合Python风格的方法来实现这个?