Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/308.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python importlib import_模块将*添加到全局_Python - Fatal编程技术网

Python importlib import_模块将*添加到全局

Python importlib import_模块将*添加到全局,python,Python,尝试根据一些动态环境变量将设置属性动态添加到globals() import os from importlib import import_module # To support environment variables as the means of specifying # the target environment as an alternative to using the --settings flag # where MY_ENV is 'local', 'developm

尝试根据一些动态环境变量将设置属性动态添加到
globals()

import os
from importlib import import_module


# To support environment variables as the means of specifying
# the target environment as an alternative to using the --settings flag
# where MY_ENV is 'local', 'development', 'staging', 'production'
if os.environ.get('MY_ENV'):
    env = os.environ.get('MY_ENV')
    import_module('my.settings.%s' % env, '*')
据了解,
import\u模块
需要分配给一个变量:

foo = import_module('path.to.package', 'bar')
而且:

globals()[foo] = foo
可以将其添加到
全局范围

但是,如何使用通配符
*

globals()[*] = import_module('path.to.package', '*')

显然,上述操作会导致语法错误。

要执行所需操作,需要使用“\uuu import\uuu()”而不是import\u module()

我认为这个答案可以帮助你


看起来确实很相似。我不认为导入模块的第二个参数意味着你认为它的意思。它的包装相对进口应该是相对的;你的例子没有一个是相对重要的。我明白了。我想我更多的是尝试使用字符串插值来动态改变导入路径。这里回答了这个问题:[Python:如何动态导入模块中的所有方法和属性][1][1]:嗯,尝试回答这个问题或将其标记为重复项。。。