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

    在python脚本中可以用pdb进行调试,具体方法如下:

    1.使用run语句调试,格式为:

    run(statement[,globals[,locals]])

    参数含义如下

    statement:要调试的语句块,以字符串的形式
    globals:可选参数,设置statement运行的全局环境变量
    locals:可选参数,设置statement运行的局部环境变量

    以下实例使用run函数调试语句块
    >>> pdb.run('''
    for i in range(0,3):
     i=i**2
     print(i)
    ''')
    > <string>(2)<module>()
    (Pdb) n                         #(Pdb)为调试命令提示符,n表示执行下一行
    > <string>(3)<module>()
    (Pdb) n
    > <string>(4)<module>()
    (Pdb) n
    0
    > <string>(2)<module>()
    (Pdb) continue                  #继续运行程序
    1
    4


    运行函数
    在python中可以使用pdb模块的runcall函数来调试函数,其原型如下:
    runcall(function[,argument,...])
    参数含义如下:
    function:  函数名
    argument:  函数的参数
    以下实例使用runcall函数来调试函数

    >>> import pdb
    >>> def sum(*args):
     r=0
     for arg in args:
      r=r+arg
     return r

    >>> pdb.runcall(sum,1,2,3,4)
    > <pyshell#13>(2)sum()
    (Pdb) n
    > <pyshell#13>(3)sum()
    (Pdb) print r
    0
    (Pdb) continue
    10
    >>> pdb.runcall(sum,1,2,3,4,5,6)
    > <pyshell#13>(2)sum()
    (Pdb) continue
    21

    设置硬断点
    在python中可以使用pdb模块的set_trace函数在脚本中设置硬断点。set_trace函数一般在".py"脚本中使用。其函数原型如下:
    set_trace()
    以下实例使用run函数调试语句块
    > e:\python32\debug.py(3)<module>()
    -> for i in range(0,5):
    (Pdb) list                         #使用list列出脚本内容
      1   import pdb
      2   pdb.set_trace()
      3  -> for i in range(0,5):
      4    i=i*5
      5    print(i)
    [EOF]
    (Pdb) continue                     #使用continue继续执行
    0
    5
    10
    15
    20

  • 相关阅读:
    Ubuntu 14.04 LTS 火狐浏览器中,鼠标选择文字被删除的解决办法
    Android 冷启动时间优化
    Word 2010 小技巧篇
    Word 2010 制作文档结构之图标自动编号设置
    Word 2010 制作文档结构之章节自动编号
    Word 2010 制作文档结构之页码从正文开始设置
    字幕通-字幕翻译工具
    图灵社区 和 大家网
    Python GUI编程之WxPython
    VLC媒体视频播放器 v3.0.2官方版
  • 原文地址:https://www.cnblogs.com/djcsch2001/p/2106750.html
Copyright © 2011-2022 走看看