如何在Python 3.6中导入名为[userinput]的模块?

10 浏览
0 Comments

如何在Python 3.6中导入名为[userinput]的模块?

我试图获取用户的输入,并查看是否有一个以他们输入的名称命名的模块。如果有,我希望导入该模块,并调用其中同名的函数。我知道有更简单的方法来实现这一点,但我想尝试将其压缩到最小。\n这是我的想法:\n

userinput = str.lower(input(prompt))
try:
    import (userinput) as _(userinput)
    _(userinput).(userinput)
except:
    print("找不到模块")

\n如果找不到给定名称的模块,它将触发异常并继续执行。\n我的问题是如何根据输入的字符串导入一个模块。

0
0 Comments

在Python 3.6中,有一个问题是如何导入一个名为[userinput]的模块。为了解决这个问题,可以使用__import__函数。

以下是解决方法的代码:

userinput = input("Enter name of module to import: ")
module = __import__(userinput)

通过使用__import__函数,可以动态地导入一个模块。用户可以通过输入一个模块的名称,然后将其存储在变量[userinput]中。然后,通过__import__(userinput)来导入这个模块。

这种方法可以在运行时动态地导入模块,而不需要提前知道模块的名称。用户可以根据需要输入不同的模块名称,以导入不同的模块。

总结起来,使用__import__函数可以解决在Python 3.6中如何导入名为[userinput]的模块的问题。用户可以通过输入模块名称来动态地导入不同的模块。这种方法使得代码更加灵活和可扩展。

0
0 Comments

问题的出现原因:在代码中尝试使用exec()函数导入一个模块,但是在使用_(userinput).(userinput)时出现了错误,导致模块无法被正确导入和运行。

解决方法:使用exec()函数导入模块时,可以尝试使用exec("{}. _{}" .format(userinput,userinput)),这样可能可以解决问题,但是不能正确识别要导入的模块。

问题的解决方法:修复了代码中的错误,问题得到解决。

0