質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
デバッグ

デバッグはプログラムのバグや欠陥を検知し、開発中のバグを取り除く為のプロセスを指します。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

1回答

3587閲覧

【Python】Visual Studio Codeのデバッグがブレークポイントで止まらない

essa

総合スコア81

デバッグ

デバッグはプログラムのバグや欠陥を検知し、開発中のバグを取り除く為のプロセスを指します。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2018/10/03 01:21

Pythonコードのデバッグをしたいと考え、VScodeを入れたのですが
デバッグが止まりません。
launch.jsonの設定は以下の通りです。
該当している環境は、Python: Current File (Integrated Terminal)です。
心当たりのあるかた、教えていただければと思います。

どうぞよろしくお願いします。

"version": "0.2.0", "configurations": [ { "name": "Python: Current File (Integrated Terminal)", "type": "python", "request": "launch", "program": "${file}", "console": "integratedTerminal" "stopOnEntry":true, }, { "name": "Python: Attach", "type": "python", "request": "attach", "port": 5678, "host": "localhost" }, { "name": "Python: Django", "type": "python", "request": "launch", "program": "${workspaceFolder}/manage.py", "console": "integratedTerminal", "args": [ "runserver", "--noreload", "--nothreading" ], "django": true }, { "name": "Python: Flask", "type": "python", "request": "launch", "module": "flask", "env": { "FLASK_APP": "app.py" }, "args": [ "run", "--no-debugger", "--no-reload" ], "jinja": true }, { "name": "Python: Current File (External Terminal)", "type": "python", "request": "launch", "program": "${file}", "console": "externalTerminal" } ] }

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

morinatsu

2018/10/07 02:14

「デバッグが止まりません」というのが曖昧です。ブレークポイントが素通りされるということでしょうか。
essa

2018/10/07 02:27

日本語が悪かったですね。仰る通り、ブレークポイントが素通りされてしまいます。
guest

回答1

0

ベストアンサー

stopOnEntryの直前の行に、カンマが無いようです。

json

1"console": "integratedTerminal" 2"stopOnEntry":true,

VS Codeであれば、launch.json自体にもシンタックスハイライトが利くので、怪しいところを探してみてください。


追記

私のlaunch.jsonです。見ての通りstopOnEntryは付けておりません(そもそもデフォルトから変えていません)。が、設定したブレークポイントで停止します。

json

1{ 2 // Use IntelliSense to learn about possible attributes. 3 // Hover to view descriptions of existing attributes. 4 // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 5 "version": "0.2.0", 6 "configurations": [ 7 { 8 "name": "Python: Current File (Integrated Terminal)", 9 "type": "python", 10 "request": "launch", 11 "program": "${file}", 12 "console": "integratedTerminal" 13 }, 14 { 15 "name": "Python: Attach", 16 "type": "python", 17 "request": "attach", 18 "port": 5678, 19 "host": "localhost" 20 }, 21 { 22 "name": "Python: Django", 23 "type": "python", 24 "request": "launch", 25 "program": "${workspaceFolder}/manage.py", 26 "console": "integratedTerminal", 27 "args": [ 28 "runserver", 29 "--noreload", 30 "--nothreading" 31 ], 32 "django": true 33 }, 34 { 35 "name": "Python: Flask", 36 "type": "python", 37 "request": "launch", 38 "module": "flask", 39 "env": { 40 "FLASK_APP": "app.py" 41 }, 42 "args": [ 43 "run", 44 "--no-debugger", 45 "--no-reload" 46 ], 47 "jinja": true 48 }, 49 { 50 "name": "Python: Current File (External Terminal)", 51 "type": "python", 52 "request": "launch", 53 "program": "${file}", 54 "console": "externalTerminal" 55 } 56 ] 57}

ちなみに、検証用に用意したソース(temp.py)はこちら。

python

1print('Hello') 2print('World') 3print('Again')

投稿2018/10/07 03:18

編集2018/10/07 04:58
morinatsu

総合スコア395

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

essa

2018/10/07 03:48

回答ありがとうございます。 ご指摘のカンマをつけてみたのですが、やはりブレークポイントで止まることなく通ってしまいました。
morinatsu

2018/10/07 05:00

こちらでブレークポイントの実験に使ったソースを回答に追記しました。 コードや環境を取っ替え引っ替えして問題が再現する条件を絞り込んでみてください。
morinatsu

2018/10/07 05:13

また、stopOnEntryは「プログラムの最初の行でデバッガを止める」ですが、こちらは実際に止まっていますか?
essa

2018/10/08 07:35

回答ありがとうございます。 stopOnEntryについて: 実際に止まっています。 デバッグの実験ソースについて: 新しくワークスペースを作成し、試してみました。 試してみたところ、止まりました。 最初に質問した時は、仮想環境上で実行しており、 様々なパッケージをインストールしております。 インストールしたパッケージによってデバッグが動作しなくなる可能性があるのでしょうか?(ないとは思いますが。。。)
morinatsu

2018/10/08 08:24

実物を見ないと判断つかないところですが、例えば「パッケージの実体がPure Pythonでない」「VS CodeとPythonの連携が途切れる」等の理由でデバッグが機能しなくなることはあり得ると思います。 今後の対応としては、「ブレークポイントを追加して、いつ『止まらなくなる』のか探る」とか「もっと手前で止めて、ステップ実行でしのぐ」とかの泥臭い回避策を何度も試みていくことになります。
essa

2018/10/10 09:40

回答ありがとうございます。 仮想環境でない場合(デフォルト)ではデバッグが実行されるので conda createにて作成された仮想環境に何か問題があるのかなと思いました。 探ってみます。 ご回答ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問