Python命令行模式下调试程序

  • 背景
  • 调试工具pdb
  • 使用方式

背景

Python项目, 需要通过命令行传递参数来运行程序并进行调试。

调试工具pdb

Python的命令行调试工具为pdb,与C/C++的调试工具gdb非常类似。

常用的命令:

使用方式

假设项目的启动文件为start.py, 运行时需要传递一个可选参数paramA和两个必选参数paramB, paramC,进入到项目的运行环境以后,直接键入以下命令:

$ python3 -m pdb start.py --paramA xx  paramB paramC

回车后结果如下 (仅供参考):
然后就可以键入上边的常用命令进行动态调试。

此外,还有一种启动调试的方式,就是在待调试的代码位置之前加入如下代码:

import pdb
pdb.set_trace()

然后键入如下命令也可进入调试环境:

$ python3  start.py --paramA xx  paramB paramC

References
1.https://www.cnblogs.com/zhangmingda/p/13206042.html;
2.https://blog.csdn.net/liangzhao_jay/article/details/79718850;

Python命令行模式下调试程序相关推荐

  1. [python] 命令行模式下出现cp65001异常

    问题 在命令行模式下有时会提示cp65001异常,很显然是命令行编码和python环境编码不匹配. 解决 切换命令行编码 unknown encoding: cp65001异常 python安装后进入 ...

  2. Python在命令行模式下登录MySQL数据库

    1). 在命令行模式下登录MySQL数据库,使用SQL语句如下要求:1. 创建留言数据库: blogdb;2. 在blogdb数据库中创建会员表users和博客文章表blog,结构如下3. 在会员表u ...

  3. python命令行模式和交互模式区别_对命令行模式与python交互模式介绍

    命令行模式与python交互模式 1.在命令行模式下,可以执行 python 进入 Python 交互式环境,也可以执 行 python hello.py 运行一个.py 文件. 2.在 Python ...

  4. 如何在Terminal命令行模式下运行Objective-C

    一般Objective-C的代码都在Xcode中调试,今天实验了下如何在命令行模式下运行,还是比较简单的,记录分享一下. File: xxd.h #include <Foundation/Fou ...

  5. 命令行模式下几个网络命令详解

    命令行模式下几个网络命令详解 上一篇 / 下一篇  2007-05-16 16:20:55 查看( 166 ) / 评论( 0 ) / 评分( 0 / 0 ) 命令行模式下几个网络命令详解 一.pin ...

  6. 命令行模式下获取参数的方法

    命令行模式下,$_SERVER['argv'] 的值为数组. 例如:D:\wamp\bin\php\php5.3.13>php D:\wamp\www\test\argv.php a1=123 ...

  7. CentOS命令行模式下设置屏幕常亮----没有达到预期效果

    CentOS命令行模式下设置屏幕常亮 最近在一个项目中使用了CentOS作为客户端(本着资源合理使用的原则,通常我们环境中CentOS都不安装图形界面的,就是直接命令行操作).因为是做7天*24小时测 ...

  8. kali liunx使用心得之命令行模式下如何配置连接无线网络

    kali liunx使用心得之命令行模式下如何配置连接无线网络 最近在使用kali时出现了一点小小的问题,由于我安装的是win10和kali双系统,为了能够在kali界面下自由操作win10下的磁盘, ...

  9. Linux 命令行模式下退出 vim

    Linux 命令行模式下退出 vim 命令 说明 :q! 强制退出,不保存 :q 退出 :wq! 强制保存并退出 :w <文件路径> 另存为 :saveas 文件路径 另存为 :x 保存并 ...

  10. cmd命令行乱码 oracle_cmd 命令行模式下输出中文时显示乱码的解决方案

    cmd 命令行模式下输出中文时显示乱码的解决方案 因为发现默认值->属性窗口中已是936了,只好通过注册表直接改动:HKEY_CURRENT_USER\Console\%SystemRoot%_ ...

最新文章

  1. 解读刘强东关于人才的两个标准和5个层次
  2. Service和Thread的关系
  3. linux eclipse 配置c++开发环境,用Eclipse搭建C/C++开发环境
  4. Android动态权限申请
  5. java监控网卡_VC++监控网卡状态
  6. 中石油训练赛 - 位置(模拟+思维)
  7. unity 是厘米还是米_1种“竹节参”,植株有40厘米高,能挂果,果子成熟后变红,珍贵...
  8. android 使用c 代码实现,JNI开发实现helloworld,调用自己的C代码实现(1)
  9. javaweb jsp页面无法解析${message}
  10. about window.onload
  11. [ARC061E]すぬけ君の地下鉄旅行 / Snuke's Subway Trip
  12. Ubuntu 16.04源码搭建ELK日志分析系统(Elasticsearch+Logstash+Kibana)
  13. oraccle 索引管理
  14. C++ 编译发现 error C2146: syntax error : missing ';' before identifier 'm_ctrlserver'
  15. 风云2号卫星云图_中国为什么要发这么多卫星?答案没有出乎意料
  16. 爱你穿越时间,两行来至秋末的眼泪
  17. 白马非马的面向对象分析
  18. 测试之颠,必先利其器
  19. css音量调节,CSS3 音量调节旋钮
  20. python交易是什么意思_Py交易是什么意思?Py交易是什么梗?

热门文章

  1. python 安装第三方库,超时报错--Read timed out.
  2. LC-871 最小加油次数
  3. 转 node.js和 android中java加密解密一致性问题;
  4. winform打包项目
  5. sqlserver2005查询表字典
  6. php中的加密解密模块-mcrypt
  7. 一次没想好,第二次就要想到做好
  8. Linux 引导流程解析
  9. 分类数据转换为树形结构
  10. 演示账号激活的过程:注册——向指定邮箱发送邮件——用户登录邮箱,激活账号