• linux python调试技巧


    Linux下Python基础调试 

    http://blog.163.com/liuyuhuan0915@126/blog/static/78265448201141662828820/

    当手边没有IDE,面对着python调试犯愁时,你就可以参考下本文;(pdb 命令调试)

    参考:http://docs.python.org/library/pdb.html 和 (pdb)help

    首先你选择运行的 py

    python -m pdb myscript.py

    (Pdb) 会自动停在第一行,等待调试,这时你可以看看 帮助

    (Pdb) h

    说明下这几个关键 命令

    >断点设置

    (Pdb)b 10 #断点设置在本py的第10行

    或(Pdb)b ots.py:20 #断点设置到 ots.py第20行

    删除断点(Pdb)b #查看断点编号

    (Pdb)cl 2 #删除第2个断点

    >运行

    (Pdb)n #单步运行

    (Pdb)s #细点运行 也就是会下到,方法

    (Pdb)c #跳到下个断点

    >查看

    (Pdb)p param #查看当前 变量值

    (Pdb)l #查看运行到某处代码

    (Pdb)a #查看全部栈内变量

    >如果是在 命令行里的调试为:

    import pdb

    def tt():

        pdb.set_trace()

        for i in range(1, 5):

            print i

    >>> tt()

    #这里支持 n p c 而已

    > (3)tt()

    (Pdb) n

     带参调试:

    python -m pdb makePackage youtuberev_1.0_csky.ipk

    常用命令说明:
    l #查看运行到哪行代码
    n #单步运行,跳过函数
    s #单步运行,可进入函数
    p 变量 #查看变量值
    b 行号 #断点设置到第几行
    b #显示所有断点列表
    cl 断点号 #删除某个断点
    cl #删除所有断点
    c #跳到下一个断点
    r #return当前函数
    exit #退出
    更多的命令http://docs.python.org/library/pdb.html

    (Pdb) dir([1,2])
    ['__add__', '__class__', '__contains__', '__delattr__', '__delitem__', '__delslice__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getslice__', '__gt__', '__hash__', '__iadd__', '__imul__', '__init__', '__iter__', '__le__', '__len__', '__lt__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__rmul__', '__setattr__', '__setitem__', '__setslice__', '__sizeof__', '__str__', '__subclasshook__', 'append', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort']
    (Pdb) p chk.winfo_x()
    30
    (Pdb) p chk.winfo_y()

    检查Python对象

    http://www.cnblogs.com/shanyou/archive/2007/02/12/648479.html

  • 相关阅读:
    js验证及限制文本框输入
    在鼠标单击位置显示一个层,而不影响其它超级链接或按钮
    js创建弹出DIV层并锁定背景层
    SQLConvert(varchar(12),getdate(111))中的111,112,110
    C#提高的一些要点
    简洁纯js分页
    java排序集锦
    企业中vsftp虚拟用户高级配置实战
    MySQL的timeout那点事
    MYSQL管理之索引改造
  • 原文地址:https://www.cnblogs.com/jingzhishen/p/3493991.html
Copyright © 2020-2023  润新知