PyCharm控制台需手动开启自动滚动到底功能:运行后右键控制台空白处勾选“Scroll to the end when new output is received”,并确保未启用Pin console;如需默认生效,可在Run→Edit Configurations→Templates→Python中勾选“Enable auto-scroll to end”。

PyCharm 运行控制台输出后光标不自动滚动到底?
默认情况下,PyCharm 的 Python Console 或 Run 窗口在程序输出大量内容后,光标不会自动跳转到末尾——这不是 bug,而是设计行为:它会保持你当前的滚动位置,方便回看。但如果你运行的是日志流、实时打印或调试输出,就需要光标始终停在最新一行末尾。
如何开启“自动滚动到末尾”功能
这个选项叫 Scroll to the end when new output is received,但它不在主设置里,而藏在 Run/Debug 控制台的右键菜单中:
- 运行程序后,点击 PyCharm 底部的
Run或Python Console标签页 - 在控制台空白处右键 → 勾选
Scroll to the end when new output is received - 该设置是**窗口级生效**(即对当前 Run 配置有效),重启运行也会保留
注意:如果勾选后仍不生效,大概率是因为你启用了 Pin console(固定控制台)——右键菜单中若看到 Pin console 已打钩,先取消它,否则自动滚动会被禁用。
为什么有时候勾了也没用?常见干扰项
几个容易被忽略却直接导致失效的点:
PyCharm 2026.2是 JetBrains PyCharm 的指定版本安装包,下载地址指向官方 Windows 安装包直链,可用于旧项目兼容、版本回退和环境测试。
-
Run窗口被手动拖动过(哪怕只动了一像素),PyCharm 会临时禁用自动滚动,直到你再次点击控制台任意位置或按End键 - 使用
input()或阻塞式读取时,PyCharm 有时会暂停滚动逻辑,直到输入完成;此时可配合Ctrl+End(Windows/Linux)或Cmd+↓(macOS)手动跳转 - 在
Python Console中执行多行代码块(如 for 循环打印),若未启用Use soft wraps,长行换行可能干扰滚动判断
想让所有新 Run 都默认开启?靠配置模板
每次手动勾选太麻烦,可以一劳永逸设置为默认行为:
- 打开
Run → Edit Configurations… - 左侧选中
Templates → Python - 右侧勾选
Emulate terminal in output console(非必需,但能提升兼容性) - 点击右下角
Modify options…→ 勾选Enable auto-scroll to end
这样新建的任何 Python 运行配置都会继承该设置。不过要注意:老配置不会自动更新,需单独编辑或删掉重建。
真正卡住人的地方往往不是找不到开关,而是没意识到 Pin console 和手动滚动会静默覆盖自动滚动逻辑——这两个状态在 UI 上没有任何视觉提示,只能靠右键菜单确认。

















