全网最实用的 Debug 调试技巧汇总 -Python 大佬偷偷使用的神技

本贴最后更新于 1601 天前,其中的信息可能已经事过境迁

一、思考❓❔

image.png

1.什么是debug?


2.为什么需要debug?

image.png


3.debug工具需要具备哪些功能?

image.png


二、Python中的Debug大法?

案例代码如下所示:

创建deubg_skills_demo.py文件

import time

from DebugSkills.gifts import send_gift


def say_love(name, talk):
    print(f"{name}: {talk}!")
    print(show(3))
    print(f"{send_gift()}, 能代表我的心!")


def show(num):
    print(f"{'轰隆' * num}!")
    print(f"{'⚡' * num}")
    return "还敢再发誓吗?"


def long_long_ago(name, talk):
    # breakpoint()
    print("\nlong long ago...")
    print("当初没被雷劈死的原因既然是爱错了那个她/他")
    print(f"{name}: {talk}!")
    print(show(4))
    print(f"{send_gift()}, 能代表我的心!")


if __name__ == '__main__':
    lover = input("请输入你爱的人: ")
    love_talk = input("请输入爱的箴言: ")
    # 方法一:
    # import pdb
    # pdb.set_trace()

    # 方法二:
    # breakpoint()
    breakpoint()
    say_love(lover, love_talk)
    time.sleep(5)
    lover = input("\n请输入你爱的人: ")
    love_talk = input("请输入爱的箴言: ")
    long_long_ago(lover, love_talk)


创建gifts.py文件

import random

gifts = ["99朵玫瑰", "钻戒", "马尔代夫三十日游",
         "北京二环内的一套厕所", "玛莎拉蒂车钥匙",
         "免费自行车司机"]


def send_gift():
    """
    送礼物
    :return:
    """
    one_gift = random.choice(gifts)
    return one_gift


1.pdb操作 (^_-)-☆

image.png


image.png



三、Pycharm debug操作??

image.png


1.打开Python Prompt

image.png

会出现一个ipython的控制台

image.png


2.Step Over / F8


3.Step Into / F7


4.Step Out / Shift+F8


5.Step Into My Code / ALT+Shift+F7


6.Evaluate Expression

image.png


7.Quick Evaluate Expression

image.png

image.png


8.Watching

image.png


四、总结??

image.png

回帖
请输入回帖内容 ...