在其他功能中导入模块

时间:2018-11-22 19:27:25

标签: python python-3.x import

我想根据某些情况(例如用户args输入)导入模块,然后使用此模块内部提供的功能。 但是它只允许我在文件开始时导入,而不能在我的主要函数中导入。我该怎么解决?

2 个答案:

答案 0 :(得分:0)

您可以使用importlib

>>userinput='math'
>>import importlib
>>my_module=importlib.import_module(userinput)
>>print(my_module.pow(4,2))
16 

我认为这可以满足您的要求!

import importlib
u='math'
def func():
  m=importlib.import_module(u)
  print(m.sqrt(4))

func()

答案 1 :(得分:0)

当我测试此问题时,我没有任何错误,这是我的代码:

import random

global x
condition=random.randint(0, 1)
x=1
def function():
    if x == condition:
        import time
        time.sleep(1)
        print("imported function correctly!")
    else:
        try:
            time.sleep(1)
        except:
            print("conditions not met and module is not imported")

function()