pycharm中选中代码后按ctrl+shift+e(windows/linux)或cmd+shift+e(macos)可直接在python console中执行,该功能名为“execute selection in console”,需确保python console已激活,纯表达式需显式print才能输出,变量定义后保留在当前console命名空间。

PyCharm里选中代码后按什么快捷键能直接运行
直接执行选中代码,用 Ctrl+Shift+E(Windows/Linux)或 Cmd+Shift+E(macOS)。这是 PyCharm 内置的「Execute Selection in Console」功能,不是运行整个文件,也不是调试,就是把高亮部分丢进 Python Console 里立刻求值。
常见误区是误按 Ctrl+R(Run),那会运行整个脚本;或者按 Ctrl+Alt+R(Run Context Configuration),容易配错配置。真正“只跑选中的几行”,必须认准 Ctrl+Shift+E。
- 必须先有活跃的 Python Console —— 如果没开过,PyCharm 会自动启动一个,但首次可能卡顿 1–2 秒
- 选中的代码不能含语法错误,比如少括号、缩进错,否则 Console 报
SyntaxError并中断 - 变量赋值语句(如
x = 42)执行后,该变量会留在 Console 的当前命名空间里,后续选中print(x)能拿到值
为什么选中代码执行后没输出,或提示 NameError
本质是执行环境和预期不一致:PyCharm 的 Console 默认不自动打印表达式结果(不像 Jupyter),且作用域隔离。
PyCharm 2026.2是 JetBrains PyCharm 的指定版本安装包,下载地址指向官方 Windows 安装包直链,可用于旧项目兼容、版本回退和环境测试。
- 纯表达式(如
2 + 3、len("abc"))不会自动显示结果,得显式写print(...) - 如果选中的是函数定义(
def f(): return 42),它只是定义了函数,不会调用;要执行得再选中f()单独运行 -
NameError多因变量在 Console 中未定义——比如你在文件里写了a = 1,但没选中它执行,直接选中print(a)就会报错 - Console 是独立进程,每次重启后变量清空;关掉再开,之前定义的全没了
想让选中代码像 Jupyter 一样自动显示结果怎么办
PyCharm 本身不支持自动 print 表达式结果,但有两个实用替代方案:
- 装插件
Python Console Enhancements(JetBrains 插件市场搜得到),启用后能让 Console 对单行表达式自动输出,类似 IPython - 更稳的方式:把想观察的表达式包一层
print()再选中执行,比如把data.head()改成print(data.head()) - 如果频繁做探索性分析,直接开
Tools → Python Console,然后手动输、回车、再输——比反复选中+快捷键更顺手
执行选中代码时遇到 ImportError 或路径问题
这是因为 Console 的工作目录和 Python 解释器环境,不一定和你的项目根目录或 __main__ 一致。
- Console 默认工作目录通常是项目根目录,但如果在子目录打开文件,选中代码里用了相对路径(如
open("config.json")),可能找不到文件 - 解决方法:执行前先在 Console 里运行
import os; os.getcwd()确认当前路径,必要时用os.chdir(...)切过去 - ImportError 通常说明模块没安装,或不在
PYTHONPATH里——检查 PyCharm 右下角解释器是否选对(比如你用 venv,别误选了系统 Python) - 如果代码依赖
__file__或sys.path动态推导路径,选中执行时这些值会指向 Console 启动位置,不是你源文件的位置










