在线运行 Python
浏览器内置的完整 CPython 解释器,写完点「运行」即可看结果。代码在你的设备上执行,不会上传到服务器
代码
运行结果
这是什么?
这是一个真正运行 Python 的在线解释器,不是语法高亮玩具。它把完整的 CPython 解释器编译成 WebAssembly 格式,在你打开页面时下载到浏览器里运行。因此代码执行速度接近本机, 也不需要把代码发给任何人。
怎么用?
- 在左边写代码,或从右上角「加载示例」里挑一个例子;
- 如果代码里有
input(),在下方「标准输入」框里按行填好数据; - 点「运行」或按
Ctrl+Enter; - 结果出现在右边。红色是报错信息,蓝色是工具给你的提示。
支持能力对照
| 能力 | 是否支持 | 说明 |
|---|---|---|
| Python 标准库 | 支持 | math、random、json、re、datetime、collections、itertools、functools 等 |
| input() 读取输入 | 支持 | 在下方「标准输入」框按行填写 |
| 文件读写 | 支持(内存内) | 写入的文件只存在于浏览器内存,刷新页面即消失 |
| 第三方包 | 不支持 | numpy、pandas、requests 等需要额外下载,体积远超引擎本身 |
| 网络请求 | 不支持 | 浏览器沙箱限制,且本站不开放外联 |
| 图形界面 / 绘图 | 不支持 | 浏览器内没有桌面环境,matplotlib 窗口无法弹出 |
| 长时间运行 | 限 10 秒 | 超时自动停止,避免死循环卡住浏览器 |
常见问题
为什么第一次运行要等几秒?
首次运行需要下载约 12MB 的 Python 引擎(含解释器和标准库)。下载一次后浏览器会缓存, 之后再打开本页或运行代码基本是秒开。
我的代码会被上传或保存吗?
不会。整个执行过程发生在你的浏览器内,服务器只发送引擎文件,不接收代码、不接收输入、不接收运行结果。 关闭页面后一切消失,本站也没有任何地方留存你的代码。
为什么 import numpy 报 ModuleNotFoundError?
浏览器内置的是 Python 标准库,不包含第三方包。完整安装 numpy 等科学计算包需要额外下载几十 MB, 且在本地方案里还有更好的替代(直接装 Python 环境)。矩阵运算类的简单需求可以用标准库里的列表推导式实现。
代码卡住了怎么办?
点「停止」按钮即可强制中断。死循环(如 while True: pass)不会卡死整个页面 ——
引擎运行在独立的后台线程中,超时 10 秒也会自动终止。
断网之后还能用吗?
页面已经打开、且引擎加载过一次的前提下,断网后依然可以正常编辑和运行代码,因为一切都在本地完成。
相关工具
JavaScript 在线运行 · SQL 在线练习 · 文本处理 · 全部代码运行工具