在 CentOS 上调试 Python 程序,常见方式有以下几种,从简单到专业逐步介绍:
适合快速定位问题。
print("x =", x)
或推荐用 logging:
import logging
logging.basicConfig(level=logging.DEBUG)
logging.debug("x = %s", x)
CentOS 默认已安装。
import pdb
pdb.set_trace()
运行程序后会进入交互调试:
> /path/test.py(10)<module>()
-> pdb.set_trace()
(Pdb)
常用命令:
n:下一步s:进入函数c:继续l:查看代码p 变量:打印变量q:退出python -m pdb test.py
基于 IPython,支持自动补全。
pip install ipdb
import ipdb
ipdb.set_trace()
python test.py
如果崩溃,注意:
TracebackKeyError, TypeError)python --version
which python
pip list
CentOS 常同时存在:
python(Python 2)python3建议明确使用:
python3 test.py
如果是后台运行:
nohup python test.py > log.txt 2>&1 &
查看日志:
tail -f log.txt
yum install python3-pip
sudo python3 test.py
如果你能告诉我:
我可以给你更具体的调试方案。