作者Pettitte1 (低调奢华有内涵)
看板Python
标题[问题] multiprocessing.pool能不用name==main吗
时间Wed Nov 30 09:34:13 2022
是这样的 目前已经会用 multiprocessing.pool 来取得结果
范例 code 如下
https://paste.ee/p/DY72q
我可以在 if __name__ == '__main__': 之後取得我要的 data "d"
如果我後续想要对 d 进行其他各种运算
是否就只能在 if __name__ == '__main__': 缩排内进行各种动作?
能够不用 if __name__ == '__main__':
就直接 run m() 这个 function 吗?
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 27.247.128.102 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Python/M.1669772057.A.DD5.html
後来自己测试了一下
把 if __name__ == '__main__': 这部份包在一个 function 里
def test():
if __name__ == '__main__':
d = ...
return d
这样就可以不用一直在 if __name__ == '__main__': 的缩排内进行其他事了
※ 编辑: Pettitte1 (27.247.128.102 台湾), 11/30/2022 11:10:50
1F:→ lycantrope: 会这样写表示你不懂if __name__ == "__main__"的作用 11/30 12:54
3F:→ Pettitte1: 後来实际用了之後有问题 只能乖乖用了 哈 11/30 13:36
4F:→ dobedobedo: if __name__ == '__main__' 是判断程式是否直接执行 11/30 19:11
5F:→ dobedobedo: 一般是用他呼叫主函数,而不是写在函数里 11/30 19:13
6F:→ s860134: 这个判断式主要是在防止import 时被执行 12/21 00:00
7F:→ s860134: 只有直接被执行时 .py 档内这个等式会成立,如是被 impo 12/21 00:02
8F:→ s860134: rt 导入时不会成立 12/21 00:02