gpt4 book ai didi

python - exec 命令内的多处理

转载 作者:太空宇宙 更新时间:2023-11-03 18:00:24 24 4
gpt4 key购买 nike

我需要在一段代码中使用多重处理,该代码作为字符串注入(inject)到 exec 函数中:

code = """
from multiprocessing import Process

def f(name):
print('hello', name)

p = Process(target=f, args=('bob',))
p.start()
p.join()
"""

if __name__ == '__main__':
exec(code)

我收到以下错误:

Traceback (most recent call last):
File "<string>", line 1, in <module>
File "C:\Programming\WinPython-64bit-3.3.5.0\python-3.3.5.amd64\lib\multiprocessing\forking.py", line 351, in main
self = load(from_parent)
AttributeError: 'module' object has no attribute 'f'

我对多重处理非常陌生......我必须说我不知道​​出了什么问题。我的系统是Windows 7 64位。

更新:...还有一个更普遍的问题:是否可以在另一个进程中异步运行用户定义的脚本(存储在字符串中)?这实际上就是我试图实现的目标。

最佳答案

我认为您可能会遇到与此处相同的缩进问题:Python AttributeError: Object has no attribute尝试确保您的打印和执行行已正确标记。

关于python - exec 命令内的多处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27761001/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com