You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何查看Python代码每一行运行效果及函数逐行执行结果?

Python逐行查看代码执行逻辑和结果的方法

以下是不需要额外跳转网站、本地即可直接使用的实现方案:

  • 内置pdb调试工具
    不用安装任何第三方依赖,直接通过两种方式启用:
    1. 在代码需要暂停的位置插入代码 import pdb; pdb.set_trace(),运行脚本后会自动在插入位置暂停,进入交互调试模式
    2. 运行脚本时添加参数,执行 python -m pdb 你的脚本文件名.py,启动后直接停在代码第一行
      常用调试命令:
    • 输入 n 回车:执行下一行代码
    • 输入 p 变量名 回车:查看当前该变量的取值,比如你可以在示例代码的循环里执行 p i 看当前遍历的字符、p stack 看栈的当前内容
    • 输入 l 回车:查看当前位置前后的代码上下文
    • 输入 c 回车:跳过后续逐行执行,直接跑完剩余代码
    • 输入 q 回车:直接退出调试
  • IDE断点调试
    如果用PyCharm、VS Code(已安装Python扩展)这类编辑器,直接点击代码行号旁的空白位置添加断点(会显示红色圆点标记),之后选择「调试运行」模式启动脚本,代码运行到断点位置会自动暂停,编辑器侧边会实时展示当前所有作用域内的变量值,点击工具栏的「单步跳过(Step Over)」按钮即可逐行执行代码,变量值会同步更新,是最直观的调试方式。
  • 插入打印语句
    最简单直接的方式,在你需要查看状态的位置添加print语句打印关键变量即可,比如你提供的示例代码可以修改为:
def ValidParentheses(s):
    stack = []
    for i in s:
        # 打印每一步的遍历字符和栈状态
        print(f"当前遍历字符:{i},当前栈内容:{stack}")
        if i == '(':
            stack.append(i)
        elif i == ')':
            if len(stack) == 0:
                print("栈为空,匹配失败,返回False")
                return False
            else:
                stack.pop()
    print(f"遍历结束,最终栈内容:{stack}")
    return len(stack) == 0

s = '())'
print(ValidParentheses(s))

运行后就能清晰看到每一步的执行变化。

内容的提问来源于stack exchange,提问作者Kevin Tracey

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 10:57:01