Python スクリプトをデバッグできる IDE を調べてみた。PyCharm か Visual Studio Code (VSCode) がよく勧められている。この際 VSCode に慣れておくのもよさそうです。試してみました。
公式ページ(上記)からダウンロードして、/Applications
フォルダに移動する。
立ち上げて、初期設定(画面表示など)をしたあと、Extensions で Python をインストールする。
こういう画面が出てくる。"Select a Python Interpreter" でデフォルトの Python インタプリタを指定する。
Python インタプリタがありそうなところを探してくれるみたいですね。いろんなバージョンが混在して、散らかり放題なのがバレバレです。
左端のツールバーで "Explorer" (一番上)を選んで、Open Folder でフォルダを開く。wxPython のプログラムはたいてい複数ファイルにまたがっているので、1つのフォルダにまとめておくのがよい。
メインプログラムのファイルを開きます。しかし、このままでは実行できません。import wx
のところに波線がついていて、マウスポインタを当てると Import "wx" could not be resolved
とエラーメッセージが表示されます。これは当然で、venv
で作成した仮想環境を指定していないためです。
このフォルダ内に .vscode/settings.json
ファイルを作成して、以下の内容を書き込む。/PATH_TO_VENV_FOLDER
のところは、venv
で wxPython
フォルダを作成したパスを指定する。
{
"python.venvPath": "/PATH_TO_VENV_FOLDER/wxPython",
"python.defaultInterpreterPath": "/PATH_TO_VENV_FOLDER/wxPython"
}
一度 VSCode を終了して立ち上げ直し、もう一度同じフォルダを開くと、import wx
のエラーが解消されています。
実行してみます。main.py
を選んで、右上の "Run/Debug" ボタンの横のメニューから "Debug Python File" を選びます。
おー、いけてるやん。
VSCode のウィンドウ中央上に出ているデバッグ用のツールバーで、"Pause" を押してみます。wxPython はイベント待ちの状態になっているのですぐには止まりませんが、マウスポインタを動かすなどで Python スクリプトに制御が渡ると、そこで停止します。左のツールバーで "Debug" を選び、CALL STACK でスタックフレームを選ぶと、その場所のソース行と、ローカル変数の値が表示されます(ちょっと待たされる)。なかなかいいじゃないですか。
これで、wxPython プログラムをソースコードデバッグできる目処が立ちました。