Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Pythonのデバッガーを使おう
Search
Shinya Okano
June 10, 2023
Technology
1
810
Pythonのデバッガーを使おう
Shinya Okano
June 10, 2023
Tweet
Share
More Decks by Shinya Okano
See All by Shinya Okano
プロファイラを使ってPythonアプリをチューニングしよう
tokibito
2
940
Djangoテンプレートエンジンを使いこなそう!
tokibito
0
2.1k
Djangoフレームワークの紹介_OSC北海道2019
tokibito
1
980
DjangoCongressJP開催レポート
tokibito
0
72
Djangoフレームワークの紹介 OSC2018do
tokibito
0
2.6k
Other Decks in Technology
See All in Technology
Evolving DevOps Teams and Flexible Organizational Culture
kakehashi
1
130
Javaにおける関数型プログラミンへの取り組み
skrb
5
110
実践ジオフェンス 効率的に開発するために
navitimejapan
PRO
2
130
Dive Deep in Cloud Run: Automatic Base Image update
aoto
PRO
0
900
X-Correlation Injections (or How to break server-side contexts)
fransrosen
0
360
FastlyとfalcoでNode.jsレスな Webサーバー構築 : IPTV版 ABEMAアプリインフラ刷新 / Building web server using Fastly and falco without Node.js for IPTV ABEMA app
nodaguti
0
240
[RSJ24] Object Retrieval in Large-Scale Indoor Environments Using Dense Text with a Multi-Modal Large Language Model
keio_smilab
PRO
0
220
歴史と背景から改めて振り返るVPC
shotashiratori
2
220
Binary Authorizationと友達になろう / Let's be friends with Binary Authorization
iselegant
2
130
20分で分かるIAM全機能 (拡大版) / 20240903-jawsug-yokohama-iam
opelab
3
120
Bidirectional Quadratic Voting Leveraging Issue-Based Matching
kentaro
2
170
GraphQLとスキーマファーストで切り開く ライドシェアの未来
ku0522a
0
490
Featured
See All Featured
It's Worth the Effort
3n
182
27k
Building Adaptive Systems
keathley
36
2.1k
Adopting Sorbet at Scale
ufuk
72
8.9k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
363
22k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
42
2k
Happy Clients
brianwarren
96
6.6k
For a Future-Friendly Web
brad_frost
173
9.3k
StorybookのUI Testing Handbookを読んだ
zakiyama
25
5k
Being A Developer After 40
akosma
82
580k
Music & Morning Musume
bryan
46
6k
Raft: Consensus for Rubyists
vanstee
135
6.5k
Build The Right Thing And Hit Your Dates
maggiecrowley
29
2.2k
Transcript
Pythonのデバッガーを 使おう @tokibito
Pythonのプログラムをデバッグする • デバッグ方法は色々 • print関数を入れる? • ロギングlogging.debug関数を使う? • 組み込みのデバッガーpdbモジュール
pdbモジュール • https://docs.python.org/ja/3/library/pdb.html • 標準で入っている • CUIで使える • Pythonがあれば通常どこでも使えるので覚えておくとよい
ブレークポイントをコード内に指定 • 組み込みのbreakpoint()関数 • import pdb; pdb.set_trace()
pdbから起動する • python -m pdb my-script.py
pdbのコマンド • b: ブレークポイント指定 • ファイル名:行番号 • c: ブレークポイントまで継続 •
s: ステップ実行 • l: 現在の実行位置を表示 • n: 次の呼び出しまで進む • q: 終了
pdb以外のデバッガ • ipdb • IPythonのインターフェースなので使いやすい • pudb • CUIだがリッチなデバッガー
他のデバッグ方法 • VSCodeでデバッグする • こちらのほうが手軽