我有一个像
这样的变量k = os
如果我必须导入操作系统 我会写
import os
然后我就没有错误了
但是我怎样才能导入 k ( k 实际上是 os
)
我试过了
import k
然后我得到错误,没有模块。
我尝试命名 k = 'os'
而不是 k = os
。我仍然遇到同样的错误
更新:
实际上,我必须从环境变量 DJANGO_SETTINGS_MODULE 中的设置文件中导入 DATABASES
变量
我怎样才能做到这一点
from os.environ['DJANGO_SETTINGS_MODULE'] import DATABASES
最佳答案
使用importlib
模块,如果你想导入基于字符串的模块:
>>> import importlib
>>> os = importlib.import_module('os')
>>> os
<module 'os' from '/usr/lib/python2.7/os.pyc'>
当你做这样的事情时:
>>> k = 'os'
>>> import k
然后 Python 仍然会查找名为 k.py
、k.pyc
等的文件,而不是您预期的 os.py
。
关于python - 在导入命令中使用变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19725177/