python - 动态导入

python - dynamic import

我怎样才能在 python 2 中完成这样的事情?

my_variable = something1
imported = False

try:
  import my_variable #something1.py, something2.py, etc... I think I can use __import__(my_variable)
  imported = True
except ImportError:
  print('Error importing ' + my_variable + '.py')

if imported:
  my_variable.function() #where my_variable actually is something1 ???

假设您使用的是 Python 2.7 或更高版本,您可以使用 importlib:

import importlib

module_name = 'sys'

try:
    sys = importlib.import_module(module_name, package = None)
except Exception:
    print('Error importing:', module_name)

if module_name in locals():
    print(sys.argv)