zoukankan      html  css  js  c++  java
  • python调试

    如果很简单的程序,建议还是pirnt打出来。
    对于Linux环境,使用pdb/ipdb是一个不错的选择。

    安装ipdb

    sudo pip install ipdb
    

    开启调试

    1. 手动在需要调试的地方写入set_trace()
    import ipdb
    ipdb.set_trace()
    

    2.使用命令启动

    python -m ipdb fileNme.py 
    

    功能简介

    断点

    - 设置 b lineNumber
    - 查看 b
    - 删除 cl [breakpoint Number]
    - *条件断点 condition bpnumber [condition]
    - *停用 disable bpNumber
    - *激活 enable bpNumber
    

    执行

    - 执行(逐语句) s
    - 执行(逐过程) n
    - 执行当前运行函数到结束(跳出) r
    - 继续,直到下个断点 c
    - 跳到指定行j lineNumber 
    

    查看

    - 查看变量 p varsName
    - 查看当前函数参数 a
    - 列出当前源码附近 l
    - 列出lineNumber附近源码 l lineNumber 
    
    • 查看所有代码 l lineNumber

    调用栈

    - 查看当前栈 w
    - 进入下一层堆栈 d
    - 跳到上一层堆栈 u
    

    其他

    - 退出 q
    - 重新运行 run
    - 执行命令 !command  可以动态更改程序中的变量
    - 执行上条 enter
    

    实际使用

    ZeroDivisionError: division by zero

    # 执行命令
    python -m ipdb login.py
    

    • 设置断点在第四行
    b 4
    
    • 运行
    r
    

    单步调试

    n # 执行打印命令
    n # 执行b -= 10
    p b # 查看b变量内容
    s # 进入func2继续调试
    
    • 发现错误更改后
    disable 1 # 失效断点
    run # 重新载入程序
    r # 执行
    cl # 程序正常,去除断点
    
  • 相关阅读:
    H5新增属性02
    h5新增属性
    javascript基础
    多列布局和弹性盒模型详解
    边框图片+盒子倒影
    CSS新增边框属性
    css3选择器
    css3基础
    h5新增-2
    h5新增
  • 原文地址:https://www.cnblogs.com/pigbreeder/p/8080593.html
Copyright © 2011-2022 走看看