如何在Python 3.6中导入名为[userinput]的模块?
如何在Python 3.6中导入名为[userinput]的模块?
我试图获取用户的输入,并查看是否有一个以他们输入的名称命名的模块。如果有,我希望导入该模块,并调用其中同名的函数。我知道有更简单的方法来实现这一点,但我想尝试将其压缩到最小。\n这是我的想法:\n
userinput = str.lower(input(prompt)) try: import (userinput) as _(userinput) _(userinput).(userinput) except: print("找不到模块")
\n如果找不到给定名称的模块,它将触发异常并继续执行。\n我的问题是如何根据输入的字符串导入一个模块。
在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]的模块的问题。用户可以通过输入模块名称来动态地导入不同的模块。这种方法使得代码更加灵活和可扩展。