linux下调试python程序
来源:互联网 发布:白宫陷落 知乎 编辑:程序博客网 时间:2024/06/06 00:06
之前调试python程序都是用print参数,感觉有点弱爆啊,最近发现python也有类似C语言gdb的工具pdb,记录下pdb的使用方法和心得。
先找了段简单的测试程序:
#!/usr/bin/pythonfrom ftplib import FTPimport sysimport socketimport pdbdef passwordCorrect(ip,port,username,password): try: client = FTP() pdb.set_trace() client.connect(ip,port) client.login(username,password) client.close() except Exception, e: pdb.set_trace() client.close() if str(e).find('unknown IP address')!=-1: return 2 return 0 print "correct" return 1if __name__ == '__main__': socket.setdefaulttimeout(3) ret = passwordCorrect('127.0.0.1',21,'test','test') print "return is ",ret
pdb的常用命令说明:
l #查看运行到哪行代码
n #单步运行,跳过函数
s #单步运行,可进入函数
p 变量 #查看变量值
b 行号 #断点设置到第几行
b #显示所有断点列表
cl 断点号 #删除某个断点
cl #删除所有断点
c #跳到下一个断点
r #return当前函数
exit #退出
调试记录:
pdb设置断点可以在程序里加入:
import pdb
在需要设置断点的地方加入pdb.set_trace()
执行python -m pdb test.py
1 [root@wh practice]# vim test.py2 [root@wh practice]# python -m pdb test.py3 > /home/practice/test.py(2)<module>()4 -> from ftplib import FTP5 (Pdb) c6 > /home/practice/test.py(10)passwordCorrect()7 -> client.connect(ip,port)
按c逐个执行到下一个断点,按p ip 就可以查看变量ip的值
exit退出当前函数
主要用到的功能就是这些,暂且先学这些
0 0
- linux下调试python程序
- linux下调试python程序
- linux下用gdb调试python程序
- Linux下使用命令行调试Python程序
- Linux调试python程序
- linux下调试python
- Linux下调试python
- Linux下python调试
- linux下python调试
- linux下python调试
- Linux下使用pdb简单调试python程序
- 如何使用linux下gdb来调试python程序
- Linux下使用pdb简单调试python程序
- Linux环境下通过pdb调试Python程序
- windows下调试linux程序
- Linux下gdb调试程序
- Linux下gdb调试程序
- Linux环境下程序调试
- UCosII移植之OS_CPU.H详解
- redis windows安装详情及配置信息
- 第八周OJ项目--ASCII排序
- Writing in the Sciences 课程笔记 (如何审稿)
- Oracle SQL树形结构查询
- linux下调试python程序
- live555多线程实现
- Java线程同步实例 生产者 消费者问题分析
- oracle 查看锁表情况
- PagerAdapter-FragmentPagerAdapter-FragmentStataePagerAdapter
- 机器学习(十一)使用sklearn对kaggle的Titanic进行建模
- Android Material Design 学习(二)
- linux文件系统相关
- 【ROLLUP】Oracle分组函数之ROLLUP魅力