Python 3.13
main.py Ctrl/⌘+Enter 运行 · Tab 缩进
1
运行结果 就绪
点击“运行”后,程序的 print 输出将显示在这里
标准输入(stdin,可选) 每行对应一次 input();留空时运行到 input() 会弹窗询问

Python 在线编译器

免费的 Python 在线编译器与 Playground,基于 Pyodide(CPython 编译为 WebAssembly)在浏览器中本地运行 Python 3.13,支持 print 输出、input 交互输入、NumPy / Pandas / Matplotlib 等常用库与图表显示,无需安装任何软件,代码不上传服务器

Python 3.13 在线运行 NumPy/Pandas Matplotlib 出图 本地保存 免费无广告

核心特性

使用步骤

  1. 编写代码在编辑器中输入 Python 代码,或从“选择示例”下拉框中挑选 Hello World、NumPy、Matplotlib 等示例快速开始。
  2. 填写输入如果代码用到 input(),可在下方“标准输入”面板按行预填输入内容;不预填也可以,运行到 input() 时会弹出输入框。
  3. 点击运行点击“运行”按钮(或按 Ctrl/⌘ + Enter)。首次使用需下载约 10MB 的 Python 运行环境(浏览器自动缓存,之后无需重复下载),内置库会按 import 自动加载。
  4. 查看结果print 输出、报错堆栈显示在“运行结果”区,Matplotlib 图像自动展示;修正代码后再次点击运行即可。

使用场景

本工具适合Python 初学者学习与课堂演示:无需安装配置环境,打开网页即可练习语法、函数、面向对象等知识;也适合快速验证代码片段与算法题:斐波那契、素数、排序等逻辑随写随跑;还适合轻量数据分析与绘图验证:用 NumPy / Pandas 处理小数据集、用 Matplotlib 快速出图。所有计算在浏览器本地完成,适合调试不便上传的敏感脚本。需要注意,浏览器沙盒不适合长时间重计算任务,也无法使用 subprocess、多线程和访问内网资源。

常见问题

代码会被上传到服务器吗?
不会。本工具基于 Pyodide 把完整的 CPython 解释器编译成 WebAssembly,Python 代码的解析和执行全部在你的浏览器中完成;页面只会从 CDN 下载解释器运行时和第三方库文件,不会向任何服务器发送你的代码内容。
使用的是哪个 Python 版本?支持哪些库?
当前运行环境为 Pyodide 0.29.5,内置 CPython 3.13.2。直接支持 NumPy 2.2、Pandas 2.3、Matplotlib 3.8、SciPy 1.14、scikit-learn 1.7、SymPy、Beautiful Soup、NetworkX 等库,运行时代码里的 import 会被自动识别并加载;也可在“库管理”中用 micropip 安装 PyPI 上的纯 Python wheel 包(含 C 扩展的包若无 wasm 版本则无法安装)。
代码里的 input() 怎么输入?
两种方式:① 在输出区下方“标准输入”面板按行预填,每行依次对应一次 input(),适合在线判题式的固定输入;② 面板留空时,程序运行到 input() 会自动弹出浏览器输入框,输入内容会以绿色行回显到控制台。注意浏览器安全限制,运行期间主界面会临时阻塞,这是所有网页端 Python 运行环境的共同机制。
Matplotlib 中文显示为方框怎么办?
Pyodide 内置字体不含中文字形,图表标题、标签建议先使用英文;如确需中文,可自行上传中文字体(如思源黑体 .ttf),通过 matplotlib.font_manager.fontManager.addfont() 注册后设置 plt.rcParams['font.sans-serif'] 使用。
刷新页面后代码会丢失吗?可以下载吗?
不会丢失。编辑器内容和标准输入会实时自动保存到浏览器 localStorage,刷新或重新打开页面自动恢复;点击“下载”可将代码保存为 main.py,点击“上传”可导入本地 .py 脚本继续编辑运行。清除浏览器站点数据会同时清除本地保存的代码。
有哪些能力限制?
受浏览器沙盒限制:无法使用 subprocess、socket 直连、多线程/多进程和文件系统持久化(网络请求可使用 pyodide.http.pyfetch);计算在页面主线程进行,请勿运行死循环或超大规模计算,否则页面可能需要关闭重开;首次加载运行环境约需下载 10MB 文件,弱网下请耐心等待(浏览器会缓存)。