Pyinstallを使用してcomplie python3プログラム(プールを含む)が必要ですが、いくつかのエラーがあります。 私のプログラムの名前は 'ls.py'です。Pyintallでプログラムをコンパイルすると、 'ls.exe'というプログラムが生成されます。実行して、何も印刷しません。 私のコードはここにある:Pyinstallエラーを伴うPython3プログラム(プールを含む)のエラー
from multiprocessing import Pool
def f(x):
print(x*x)
if __name__ == '__main__':
p = Pool(2)
p.map(f,[1,2,3,4])
私はコードを変更した場合:
#from multiprocessing import Pool
def f(x):
print(x*x)
if __name__ == '__main__':
for i in range(1,5):
f(i)
そしてPyinstallでプログラムをコンパイルし、それがOKに実行します! SO、私は問題が
ので'from multiprocessing import Pool'
によって引き起こされると考え、この問題で私を助けてください、ありがとう
のPython 3.4のバージョン、PyinstallはpyInstallerの-3.2.1-py3.4です.egg
I試験2 melthold、どちらもPython 2または3で動作します!問題は次のとおりです:Pyinstallでそれを遵守しました。一つの方法はプールで別の方法で実行できました。間違っています –
はい、OPはプールジョブ内にprintステートメントを持っていました。戻り値が変更された場合、コードは正常に動作します。 –
また、freeze_support()を追加すると、exeプログラムは何も返しません。 –