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
760
Pythonのデバッガーを使おう
Shinya Okano
June 10, 2023
Tweet
Share
More Decks by Shinya Okano
See All by Shinya Okano
Djangoテンプレートエンジンを使いこなそう!
tokibito
0
1.7k
Djangoフレームワークの紹介_OSC北海道2019
tokibito
1
930
DjangoCongressJP開催レポート
tokibito
0
63
Djangoフレームワークの紹介 OSC2018do
tokibito
0
2.6k
Other Decks in Technology
See All in Technology
R3のコードから見る実践LINQ実装最適化・コンカレントプログラミング実例
neuecc
3
2.1k
TechFeed Experts Night#27 〜 フロントエンドフレームワーク最前線 (Svelte)
baseballyama
2
590
The AI Revolution Will Not Be Monopolized: Behind the scenes
inesmontani
PRO
1
150
Além do else! Categorizando Pokemóns com Pattern Matching no JavaScript
wmsbill
0
700
【基本】データベース設計
oracle4engineer
PRO
2
150
GrafanaMeetup_AmazonManagedGrafanaのアクセス制御機能とマルチテナント環境下でのアクセス制御について
daitak
0
390
開発パフォーマンスを最大化するための開発体制
ham0215
7
1.1k
DMM.com アルファ室採用案内資料
hsugita
1
220
生成AIの変革の時代に、直近1年で直面した課題とその解決策
ktc_wada
0
510
推しは推せるときに推せ! プロダクトにフィードバックしていこう
nakasho
0
450
AWSに詳しくない人でも始められるコスト最適化ガイド
yuhta28
2
280
今日からできる!簡単 .NET 高速化 Tips -2024 edition-
xin9le
7
3.6k
Featured
See All Featured
Web Components: a chance to create the future
zenorocha
306
41k
The MySQL Ecosystem @ GitHub 2015
samlambert
244
12k
Building a Scalable Design System with Sketch
lauravandoore
457
32k
Unsuck your backbone
ammeep
663
57k
A Philosophy of Restraint
colly
197
16k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
126
32k
What's in a price? How to price your products and services
michaelherold
238
11k
Thoughts on Productivity
jonyablonski
59
3.9k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
501
140k
5 minutes of I Can Smell Your CMS
philhawksworth
199
19k
Writing Fast Ruby
sferik
622
60k
Keith and Marios Guide to Fast Websites
keithpitt
408
22k
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でデバッグする • こちらのほうが手軽