It is important to get know the debugging method ,if we really started to learn a new programming language:
In Python programming language we have a tool similar to gdb which is pdb.
You can start debugging as below :
python -pdb -m selectsort.py
more details on pdb - https://docs.python.org/2/library/pdb.html
http://infohost.nmt.edu/tcc/help/pubs/python22/pdb-commands.html
- s(tep)
- Execute the current line, stop at the first possible occasion (either in a function that is called or on the next line in the current function).
- n(ext)
- Continue execution until the next line in the current function is reached or it
returns. (The difference between
next
andstep
is thatstep
stops inside a called function, whilenext
executes called functions at (nearly) full speed, only stopping at the next line in the current function.) - unt(il)
- Continue execution until the line with the line number greater than the current one is reached or when returning from current frame.New in version 2.6.
- r(eturn)
- Continue execution until the current function returns.
- c(ont(inue))
- Continue execution, only stop when a breakpoint is encountered.
- j(ump) lineno
- Set the next line that will be executed. Only available in the bottom-most frame. This lets you jump back and execute code again, or jump forward to skip code that you don’t want to run.
- l(ist) [first[, last]]
- List source code for the current file. Without arguments, list 11 lines around the current line or continue the previous listing. With one argument, list 11 lines around at that line. With two arguments, list the given range; if the second argument is less than the first, it is interpreted as a count.
- a(rgs)
- Print the argument list of the current function.
- p expression
- Evaluate the expression in the current context and print its value.