有没有办法在 Python 中导入以关键字命名的文件?

Ted*_*ard 5 python syntax keyword

假设有一个 Python 库states,其中 50 个州中的每一个都有一个脚本,以这些州的缩写命名。

al.py
ak.py
...
or.py
...
wi.py
wy.py
Run Code Online (Sandbox Code Playgroud)

这当然不是构建代码的最佳方式。但是考虑到它存在,并且考虑到它or是一个保留关键字,是否有一种合理的方法可以为俄勒冈州编写一个包含该语句的调用方

from states import or
Run Code Online (Sandbox Code Playgroud)

或者图书馆是否必须将他们的命名约定更改为更好的东西,例如完整的状态名称。

Dan*_*man 5

您不能or直接导入,即使在执行from... import... as. 相反,您将需要使用 中提供的基于函数的导入机制importlib。这将起作用:

import importlib
_or = importlib.import_module('states.or')
Run Code Online (Sandbox Code Playgroud)

您可以将模块称为_or.