91

Python で IRC ボットを作成しています。

Linux および Windows 用のスタンドアロン バイナリを作成したいと考えています。そして主に、ボットが開始したときにコンソールウィンドウが非表示になり、ユーザーがウィンドウを見ることができないようにする必要があります。

そのために何ができますか?

4

9 に答える 9

149

.pyw拡張子を付けて保存するだけです。これにより、コンソール ウィンドウが開かなくなります。

Windows システムでは、「実行可能モード」という概念はありません。Python インストーラーは、.py ファイルを python.exe に自動的に関連付け、Python ファイルをダブルクリックするとスクリプトとして実行されるようにします。拡張子は .pyw にすることもできます。その場合、通常表示されるコンソール ウィンドウは抑制されます。

セクション 2.2.2 の下部の説明

于 2009-04-19T01:51:12.440 に答える
44

Linux では、実行するだけで問題ありません。Windows では、pythonw 実行可能ファイルを使用します。

アップデート

わかりました。コメントの質問が理解できれば、コマンド ラインからボットを起動したコマンド ウィンドウを後で非表示にする方法を尋ねていますか?

  • UNIX (Linux)

$ nohup mypythonprog &

  • ウィンドウズ

C:/> pythonw mypythonprog を開始

その通りだと思います。いずれにせよ、これでターミナルを閉じることができます。

于 2009-04-19T01:44:08.073 に答える
28

Unix システム (GNU/Linux、macOS、および BSD を含む) の場合

を使用するnohup mypythonprog &と、プロセスを中断することなくターミナル ウィンドウを閉じることができます。exitクラウドで実行していて、ハングしているシェル プロセスを残したくない場合にも実行できます。

Windows システムの場合

.pyw拡張子を付けてプログラムを保存すると、 pythonw.exe. シェルウィンドウはありません。

たとえば、 がある場合はfoo.py、名前を に変更する必要がありますfoo.pyw

于 2013-03-01T00:30:37.360 に答える