动手学树莓派Python篇第12章:调试器在手,想看什么看什么

软件调试

软件调试是剔除软件中bug,加速软件开发的必经过程。
我们调试方式有很多,我们当前我演示我们常用2种调试方式:通过prinf输出需要查看的信息,通过专用调试器(例如python中的pdb)进行调试。

简单、粗暴的printf

#使用printf进行代码调试
import time
from sakshat import SAKSHAT
from sakspins import SAKSPins as PINS
 
if __name__ == "__main__":  
    try:
         
        #Declare the SAKS Board
        SAKS = SAKSHAT()
         
        for i in range(0,8):
            #显示0~7数组
            SAKS.digital_display.show(("%4d" % i).replace(' ','#'))
             
            print("当前显示的i值:" + str(i))
             
            time.sleep(3)
             
        print("程序运行结束")
             
         
    except KeyboardInterrupt:
        print("任务被终止了")

更精准的调试器pdb

#使用printf进行代码调试
import time
from sakshat import SAKSHAT
from sakspins import SAKSPins as PINS
import pdb
 
if __name__ == "__main__":  
    try:
         
        #启动pdb服务
        pdb.set_trace()
 
        #Declare the SAKS Board
        SAKS = SAKSHAT()
         
        for i in range(0,8):
            #显示0~7数组
            SAKS.digital_display.show(("%4d" % i).replace(' ','#'))
             
            print("当前显示的i值:" + str(i))
             
            time.sleep(3)
             
        print("程序运行结束")
             
         
    except KeyboardInterrupt:
        print("任务被终止了")

课程 bilibili 视频地址:https://www.bilibili.com/video/av71878718/?p=23

- 本文内容来自网络,如有侵权,请联系本站处理。

2022-12   阅读(10)   评论(0)
 标签: 编程

涨知识
LTE Cat.1

Cat.1技术是LTE(Long-Term Evolution)技术的一种调制及编码技术,可以提供相对较高的数据传输速率,同时又具有低功耗、低成本的特点,可以为物联网设备的连接提供更好的解决方案。

评论:
相关文章
蓝桥STEMA考试介绍,一文看懂!

“蓝桥杯”白名单比赛和蓝桥STEMA考试,到底是什么?有什么关系?本文为大家揭晓!


machine.ADC – 模数转换

ADC 类为模数转换器提供了一个接口,并表示一个端点,可以对连续电压进行采样并将其转换为离散值。


App Inventor 编程实例及指南-第20章 循环

计算机最擅长做的事情就是“重复”——像儿童一样不厌其烦地重复做一件事,而且重复的速度很快,可以在1毫秒内列出你的全部Facebook好友。


动手学树莓派Python篇第3章:操作系统为何物?为什么要花这么大精力来使用他?

操作系统是管理计算机硬件与软件资源的计算机程序,同时也是计算机系统的内核与基石。


5-14岁学编程最好的8个免费国外网站

今天给大家推荐8个编程网络资源,适合年龄从5岁到15岁+,教学内容有“基础”、有“进阶”,其中大部分免费,个别是收费网站。



Small Basic 编程入门 01 - 介绍

微软 Small Basic 将“乐趣”重新投入到计算机编程中。有一个友好的开发环境,很容易掌握,它使儿童和成人都容易进入编程的世界。