[Level 3] How to debug python in run-time environment.
You can use pdb module to debug your python program in run-time environment in two ways.
1. import pdb module and set trace.
e.g.
#!/bin/env python
import os, sys
...
import pdb; pdb.set_trace()
...
2. use python command and import pdb module.
$ python -m pdb ./myapp.py
And about pdb useful commands:
l: list source code
b: break point
r: run
s: step: into function
n: next: run next line
c: : continue next loop
where: where is the break point now
? help
Ex.
1. import pdb module and set trace.
e.g.
#!/bin/env python
import os, sys
...
import pdb; pdb.set_trace()
...
2. use python command and import pdb module.
$ python -m pdb ./myapp.py
And about pdb useful commands:
l: list source code
b: break point
r: run
s: step: into function
n: next: run next line
c: : continue next loop
where: where is the break point now
? help
Ex.
$ python -m pdb ./myapp.py (Pdb) l 1 #!/bin/env python 2 -> import os, sys 3 #print os.environ['PATH'] 4 os.environ['PATH']='/usr/bin:'+os.environ['PATH'] 5 #if './' not in sys.path: sys.path.append('./') 6 #if './lib' not in sys.path: sys.path.append('./lib') 7 #if '../lib' not in sys.path: sys.path.append('../lib') 8 exec_file = sys.argv[0] 9 os.chdir(os.path.dirname(sys.argv[0])) 10 run_at_dir = os.getcwd() 11 os.chdir('../lib') (Pdb) b 4 Breakpoint 1 at /opt/ruckuswireless/wsg/cli/bin/setup.py:4 (Pdb) b 8 Breakpoint 2 at /opt/ruckuswireless/wsg/cli/bin/setup.py:8 (Pdb) c > /opt/ruckuswireless/wsg/cli/bin/setup.py(4)Wish this helps. regards, Stanley Huang() -> os.environ['PATH']='/usr/bin:'+os.environ['PATH']
Comments
Post a Comment