因此,我目前遇到的问题是使用__import__
甚至只是标准导入。当导入多处理只是主程序包时,它会经历一个简单的测试,看看是否一切正常。我遇到了一个错误,下面是当前没有工作的代码。
__import__('multiprocessing')
def my_function():
print('Hello World')
if __name__ == '__main__':
processd = multiprocessing.Process(target=my_function)
processd.start()
processd.join()
它运行它将返回以下错误:
Traceback (most recent call last):
File "F:\Webserv\Python\MP.py", line 7, in <module>
processd = multiprocessing.Process(target=my_function)
NameError: name 'multiprocessing' is not defined
我有什么遗漏吗?
答案 0 :(得分:2)
__import__
是一个函数,因此您需要捕获其返回值:
multiprocessing = __import__('multiprocessing')
标准方法是使用import
语句:
import multiprocessing
这是首选方式。只有在真正需要时才能进行程序化导入。此外,不应使用__import__
:
导入模块。因为这个函数适合Python使用 口译员而不是一般用途,最好使用
importlib.import_module()
以编程方式导入模块。