zoukankan      html  css  js  c++  java
  • Pycharm 之debug实践讲解

    一.目录与代码展示

     demo_1.py

    def add(x,y):
        print("这是一个加法")
        return x+y
    

    demo_2.py

    import demo_1
    def execute_add(x,y):
        print("开始执行加法")
        return demo_1.add(x,y)
    
    if __name__ == "__main__":
        a=execute_add(1,2)
        print(a)

    二.Pycharm里面的一些debug按钮解释

     :这个按钮的作用就是当你在debug时候,不管你在哪个代码里面,当点击这个按钮,那么就会跳转到你当前debug的那行代码。

     :这个按钮的作用就是当你在debug时候,当点击这个按钮,那么就会跳转到你当前debug的那行代码的下一行代码

    :这个按钮的作用就是当你在debug时候,当点击这个按钮,那么就会跳转到你当前debug的方法里面去。

     :这个按钮的作用就是当你在debug时候,当点击这个按钮,那么就会跳转到你进入方法的那行代码的下一行代码(如果当前又是一个方法,那么会直接进入方法里面)。

    :这个按钮的作用就是当你在debug时候,当点击这个按钮,那么就会跳转到你进入方法的那行代码。

     :这个按钮的作用就是当你在debug时候,当你光标在某一行代码时候,当点击这个按钮,那么就会跳转到你当前光标的那行代码停下来。

     三.代码演示

    demo_2.py

    import demo_1
    def execute_add(x,y):
        print("开始执行加法")
        return demo_1.add(x,y)
    
    if __name__ == "__main__":
        a=execute_add(1,2)      #我们在这里设置断点,然后右键debug运行代码
        print(a)
    

    1)首先代码会在a=execute_add(1,2) 这样代码停住,那么我们点击这个按钮进入方法里面。

    demo_2.py

    import demo_1
    def execute_add(x,y):
        print("开始执行加法")   #此时我们debug就到这行代码。
        return demo_1.add(x,y)
    

    2)那么我们继续点击这个按钮,那么代码就会执行到下一行代码。

    demo_2.py

    import demo_1
    def execute_add(x,y):
        print("开始执行加法")   
        return demo_1.add(x,y)   #此时我们debug就到这行代码。
    

    3)那么我们在进入到demo_1.add(x,y)方法里面,那么就按,进入到方法里面

     demo_1.py

    def add(x,y):
        print("这是一个加法")  #此时我们debug就到这行代码。
        return x+y

    这里有两个分支:可以4)或者可以5)

    4)当你发现add(x,y)方法看不懂,你要回到demo_2.py里面,那么你可以按,那么就会跳转到return demo_1.add(x,y)

    demo_2.py

    import demo_1
    def execute_add(x,y):
        print("开始执行加法")      
        return demo_1.add(x,y)        #此时我们debug到这行代码。
    

    5)当你发现add(x,y)方法看不懂,你要回到demo_2.py里面,那么你可以按,那么就会执行下一步return x+y,你在按一次,那么会跳转到

    demo_2.py

    import demo_1
    def execute_add(x,y):
        print("开始执行加法")
        return demo_1.add(x,y)
    
    if __name__ == "__main__":
        a=execute_add(1,2)
        print(a)       #此时我们debug到这行代码
    
  • 相关阅读:
    九、springboot整合RabbitMq 用死信队列做延迟队列
    八、RabbitMq死信队列与延迟队列
    七、RabbitMq交换机
    六、RabbitMq 发布确认模式(confirm模式)
    五、RabbitMq的消息应答机制
    四、RabbitMq的工作模式( Work Queues)
    三、RabbitMq简单模式(hello world)
    qt 使用属性设置替换样式,为无setstylesheet接口的的action设置样式
    SpringBoot配置国际化
    基于策略模式的前端表单设计
  • 原文地址:https://www.cnblogs.com/hao2018/p/11534569.html
Copyright © 2011-2022 走看看