在Ubuntu中调试Python代码有多种方法,以下是一些常用的方法:
pdb模块Python自带的调试器pdb是一个命令行工具,可以通过在代码中插入断点来逐步执行代码。
import pdb; pdb.set_trace()
python your_script.py
n (next): 执行下一行代码。s (step): 进入函数调用。c (continue): 继续执行直到下一个断点。b (break): 设置断点。l (list): 显示当前代码行周围的代码。p (print): 打印变量的值。q (quit): 退出调试器。许多集成开发环境(IDE)如PyCharm、VSCode等都提供了强大的调试功能。
logging模块logging模块可以帮助你在代码中插入日志信息,以便跟踪程序的执行流程。
import logging
logging.basicConfig(level=logging.DEBUG, format='%(asctime)s - %(levelname)s - %(message)s')
def add(a, b):
logging.debug(f'Adding {a} and {b}')
return a + b
result = add(3, 5)
logging.debug(f'Result: {result}')
assert语句assert语句可以在代码中插入检查点,如果条件不满足,程序会抛出AssertionError异常。
def divide(a, b):
assert b != 0, "Cannot divide by zero"
return a / b
result = divide(10, 0)
traceback模块traceback模块可以帮助你打印出详细的错误信息和调用栈。
import traceback
try:
result = 10 / 0
except ZeroDivisionError:
traceback.print_exc()
选择适合你需求的方法进行调试,可以大大提高你的开发效率。