pdb调试 & cProfile性能分析

1.调试和性能分析的主要场景

  • 代码本身有问题,找到并修复
  • 代码效率有问题,如过度浪费资源
  • 开发新的future时,需要测试

2.用pdb调试

  • 一般使用print()进行调试

我们一般使用print()直接在相应的代码段进行打印,这种方法只适用于小程序。每次代码的运行都很快,使用print()很方便。

不适用于大型程序,特别是一些需要反复运行调试、追溯上下文代码,才能找到错误根源的代码。调试效率极低。

  • IDE内置的debug工具

如可以很方便地在程序中设置断点,待程序运行到相应的断点处,自动停下。然后一一查看各变量的值。

但,一般公司中,产品的开发与迭代,是多语言支持的,公司内部会开发许多接口将多语言结合起来。大部分时候,IDE对混合代码不支持断点调试功能。

  • 如何使用pdb

官方文档:https://docs.python.org/3/library/pdb.html

3.用cProfile进行性能分析
官主文档:https://docs.python.org/3.7/library/profile.html

例如计算斐波拉契数列的例子:


                
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值