如何免安装使用 Python?推荐 17 个在线的 Python 解释器!
作者:Al Sweigart
译者:豌豆花下猫@Python猫
英文:https://inventwithpython.com/blog/2022/10/30/17-online-python-ides-and-interactive-shellsrepls
转载请保留作者及译者信息!
安装 Python 很容易,但或许你正在用智能手机/平板电脑,在用不允许安装软件的电脑,或者因为其它原因无法安装 Python。那么,如何通过免安装的方式使用 Python 呢?
本文将介绍 17 个免费的 Python 解释器和交互式 Shell(也称为 REPL),你可以从 Web 浏览器中直接访问。(译注:国内访问部分网站不稳定,可以多试试,或者借助其它辅助上网的工具)
基于浏览器的 Python 解释器有一些缺点:
- 不能使用 open() 函数读写文件,不能建立网络连接。
- 不允许运行长时间的或者耗费大量内存的程序。
- 无法安装第三方模块,如 NumPy、Pandas、Requests、PyAutoGUI 或 Pygame(尽管有些会预装这些模块)。
- 有些 Python 特性可能被禁用了;在使用时需要个别注意。
- 有些服务需要你注册一个免费帐户;如果你不想处理垃圾邮件,可以用 10 Minute Email 创建一次性的邮件帐户。
尽管有以上缺点,但是用它们来练习编写 Python 代码是足够的。
下面就是 Python 在线服务网站的列表。这不是一篇匆忙整理的标题党文章;我仔细检查了每一个网站,并按照个人的喜好顺序罗列出来。
注:本文不包含 Pypy、Jython、Nutika、IronPython 等知名的 Python 解释器,因为它们都不是在线服务。想了解这些解释器,可查看:11 个最佳的 Python 编译器和解释器
1、Python Tutor

我最喜欢的基于浏览器的 Python 文件编辑器就是 Python Tutor(Python 导师)。Python Tutor 内置了一个调试器,允许每次执行一行,并查看程序的单步执行情况。不仅如此,它还记录了程序在每一步的状态,因此你也可以后退。这是大多数调试器没有的特性。

Python Tutor 网站还支持 Java 8、Javascript ES6 和 C/C++(使用 GCC 9.3 编译器)。主要的缺点是,程序在运行时会有所限制(因为在结果返回到你的浏览器之前,程序是在它们的服务器上运行的),但是在大多数的练习例子中,你不会遇到什么问题。
2、Python Anywhere

https://www.pythonanywhere.com
PythonAnywhere 是最流行的基于浏览器的解释器之一。你必须先注册,是免费的。你可以存储 Python 脚本,或者无需登录而只使用它们的 IPython 交互式 Shell。(译注:毕竟是 Anaconda 出品,能秒杀大部分竞品)
这个服务允许你从一个虚拟硬盘中读写文件,它已经安装了许多流行的 Python 第三方模块。
它支持几个不同的 Python 版本,另外,它还被用于 www.python.org 网站上的交互式 Shell。
3、Replit

Replit 需要注册一个帐户才能使用。用户界面有点复杂,因为它们有好几块功能,包括导航网站的帮助系统。该站点还有用于 C、C++、Java、Javascript 和其他几种语言的在线编译器。
Replit 还有一个 APP,可以在智能手机和平板电脑上使用。
4、Brython

https://brython.info/tests/console.html?lang=en
Brython 可以让 Web 浏览器像运行 JavaScript 一样运行 Python。一般在 Web 页面上用 JavaScript 做的事情,都可以用 Brython 来做。这意味着你在运行程序时没有内存或 runtime 的限制,因为它们是在你自己的计算机上运行。缺点是浏览器在加载网页时,必须先下载 6 M 的 Brython 代码。
你可以提前下载 Brython 到电脑上,并离线运行。首先,从 GitHub 上的 Brython 发布页面下载最新的版本(例如目前的 Brython-3.11.0.zip)。在解压后的目录中,创建一个名为 console.html 的文本文件(或任意以 .html 为后缀的名称),并写入以下内容:
<!doctype html>
<html>
<head>
<script type="text/javascript" src="brython.js"></script>
<script type="text/javascript" src="brython_stdlib.js"></script>
<style>
.codearea {
background-color:#000;
color:#fff;
font-family:'Oxygen Mono', Consolas, 'Liberation Mono', 'DejaVu Sans Mono', monospace;
font-size:14px;
overflow:auto
}
</style>
</head>
<body onload=brython({"debug":1}) ><!-- remove the 1 to leave debug mode -->
<noscript>Please enable Javascript to view this page correctly</noscript>
<textarea id="code" class="codearea" rows="20" cols="100"></textarea>
<script type="text/python3">
from interpreter import Interpreter
# Start an interactive interpreter in textarea with id "code"
Interpreter("code")
</script>
</body>
</html>
当在计算机上打开这个 .html 文件时,你将得到一个可运行的 Python 交互式 Shell。
5、Google Colab

https://colab.research.google.com
使用 Google 或 GMail 帐户,你可以访问这个 Jupyter Notebook 风格的 REPL,它提供了大量的内存和 CPU 资源。
6、Trinket

Trinket 是一个以教育为主的网站。你需要注册一个免费的帐户才能使用它,他们的交互式 Shell 还支持Turtle、Matplotlib 和其他模块,而许多在线 REPL 都不支持这些模块。
7、Python Fiddle

Python Fiddle 是一个简单的编辑器,允许你创建和运行 Python 脚本。它的用户界面太过丑陋了。。。(译注:不忍直视的页面!网站竟然支持两种语言,English与中文,我不经怀疑开发者的身份是……)
8、Programiz
https://www.programiz.com/python-programming/online-compiler
Programiz 有一个简单的文件编辑器。它不能写文件,运行资源也有限。该网站还有用于 C、C++、Java、C#、Javascript 的编译器,以及一个用于 SQL 数据库和 HTML/CSS 的沙箱。
9、Ideone

Ideaone 有一个丰富的编辑器,支持包括 Python 在内的多种编程语言(甚至有 Pascal、Fortran、Prolog 和 Cobol 等较老的语言,以及 Brainfuck 和 Intercal 等深奥的编程语言)。
它只有一个支持编写和运行程序的编辑器(有 5 秒的运行时长限制),但没有交互式 Shell。相比于用它写 Python,如果你想练习不太流行的语言,Ideaone 会是个不错的选择。
10、SymPy Live Shell

一个 Jupyter Notebook 风格的 REPL,带有一个很小的用户界面,非常适合简略的代码。它完全在浏览器中使用 JupyterLite 运行 JupyterLab,而不是在服务器上运行。
11、OnlineGDB

https://www.onlinegdb.com/online_python_interpreter
一个不错的编辑器,有一个很好的用户界面,不会让人不知所措。运行时和内存似乎也相当多。我推荐这个。
12、W3Schools Python Shell

https://www.w3schools.com/python/python_compiler.asp
W3Schools 有一个简单的 Python 编辑器,支持基本的语法高亮。它有大约 10 秒的运行时间限制,但是如果你的程序超出时间,它不会报错。如果是简单的例子,用起来很好。
13、Python原理在线解释器

https://pythonprinciples.com/online-python-interpreter
一个简单的文件编辑器,只能运行一些较为简单的代码。
14、Online Python 测试版

一个简单明了的 Python 编辑器,只能运行一些较为简单的代码。
15、TutorialsPoint

https://www.tutorialspoint.com/execute_python_online.php
一个简单易懂的编辑器,有较多运行资源。
16、RexTester

https://rextester.com/l/python3_online_compiler
这像一个业余项目,仅有极简的编辑器,有 5 秒的运行时间限制。它有其他语言的编译器,但网站难于浏览。
17、Portable Python

https://portablepython.com (不推荐)
这不是一个基于浏览器的 REPL,而是一个 .exe 文件,可以在 Windows 上运行 Python,而无需安装任何东西。然而,该网站自 2013 年(以及 Python 3.2)以来就没有更新过,下载页面也不使用 HTTPS。由于可能有恶意软件,我不建议使用它。
18、在线版 VS Code

Visual Studio Code 是一个 Electron app,这意味着它可以作为一个普通的桌面应用程序,也可以基于浏览器来运行。浏览器版本有点受限,相比于其它在线解释器,使用这个在线 IDE 需要更陡的学习曲线。
不过,如果你愿意深入了解它,或者已经使用过 Visual Studio Code,那么可以试试这个基于浏览器的版本。
注:文中图片为译者所加。
首发于 Python猫 ,如需转载,请联系作者
知乎:Python猫
博客园:豌豆花下猫
掘金:豌豆花下猫
CSDN:Python猫
如何免安装使用 Python?推荐 17 个在线的 Python 解释器!的更多相关文章
- 零基础入门学习Python(17)--函数:Python的乐高积木
前言 相信大家小时候都玩过神奇的乐高积木, 只要通过想象力和创造力我们可以拼凑很多神奇的东西,那么随着我们学习的深入,我们编写的Python代码也将日益增加,并且也越来越复杂, 所以呢,我们需要找寻一 ...
- Windows(x86,64bit)升级MySQL 5.7.17免安装版的详细教程
MySQL需要升级到5.5.3以上版本才支持Laravel 5.4默认的utf8mb64字符编码.因此就把MySQL升级了一下,期间还是遇到些小问题,记录一下以供参考. 升级准备 备份之前MySql目 ...
- Python的安装以及编译器推荐
1.Python的安装和环境配置 1.首先进入Python官网https://www.python.org/downloads/下载安装文件. 2.打开安装文件选择自定义(customize inst ...
- 免安装方式的Python之VSCode环境配置
概述 本文旨在介绍免安装方式,在VSCode中搭建Python(3.73)的配置环境.至于Python是什么.它能做些什么,诸如此类的介绍均不在此文中介绍,相信能看此文的人,多多少少都会有些了解. V ...
- python免安装版(绿色版)制作
一.实验环境 1.Windows7x64_SP1 二.需求背景 个人编写了一个软件安装器,用于一键安装开发软件及工具,该工具基于python + pywinauto. 但问题来了,新电脑上未安装pyt ...
- 如何在Eclipse中配置Tomcat(免安装版)
如何在Eclipse中配置Tomcat(免安装版) 2013-10-09 23:19wgelgrsh | 分类:JAVA相关 | 浏览642次 分享到: 2013-10-10 17:10提问者采纳 ...
- win10平台mysql5.6.34免安装版(绿色版zip)的配置以及密码和编码设置
平台:win10 X64 mysql: mysql-5.6.34-winx64.zip 以下所写都是本人测试过的,力争无误.上次发布了,可是发现了一些问题,特地查了一下官方文档(我会说我是用有道词典翻 ...
- MYSQL 免安装版(windows 7/64)
本文介绍在本地安装MYSQL数据库,免安装版相关配置 一.下载 mysql下载地址1:http://dev.mysql.com/downloads/mysql/ 二.解压MySQL压缩包 将已下载的M ...
- mysql.zip免安装版配置
MYSQL ZIP免安装版配置 1. 下载MySQL 选择自己想要的.本次安装.我使用的是mysql-5.6.17-winx64 地址:http://dev.mysql.com/downloads/ ...
随机推荐
- LGV 引理——二维DAG上 n 点对不相交路径方案数
文章目录 引入 简介 定义 引理 证明 例题 释疑 扩展 引入 有这样一个问题: 甲和乙在一张网格图上,初始位置 ( x 1 , y 1 ) , ( x 2 , y 2 ) (x_1,y_1),(x_ ...
- Javaweb—登录案例
案例:用户登录 用户登录案例需求: 编写login.html登录页面 username & password 两个输入框 使用Druid数据库连接池技术,操作mysql,day14数据库中us ...
- 第七十五篇:Vue兄弟组件传值
好家伙, 兄弟组件的传值用到Eventbus组件, 1.EventBus的使用步骤 ① 创建 eventBus.js 模块,并向外共享一个Vue的实例对象 ②在数据发送方, 调用bus.$emit(' ...
- 项目实践2:项目中的CSS网页布局(常用)
好家伙, 整个网页做下来,最主要的,自然是css的网页布局(菜鸟好用啊) 我需要一个大概这样的布局: 然后上代码: <!DOCTYPE html> <html> <hea ...
- noip2018提高组初赛试题
一.单项选择题(共 10 题,每题 2 分,共计 20 分: 每题有且仅有一个正确选项) \2. 下列属于解释执行的程序设计语言是( ). A. C B. C++ C. Pascal D. Pytho ...
- APICloud如何对接大牛直播SDK
随着apicloud的普及,越来越多的用户苦于apicloud下没有一款真正靠谱低延迟的rtmp/rtsp直播播放器苦恼. 鉴于此,大牛直播SDK携手apicloud资深版主,推出apicloud对接 ...
- KingbaseES 参数 - ora_statement_level_rollback
参数 ora_statement_level_rollback 控制KingbaseES 是否实现类似oracle 语句级的回滚.当该参数打开时,如果事务操作失败,仅会回滚最后一条操作,避免了全部操作 ...
- Mac_VM_CentOS固定IP总结
参考链接 参考链接 亲测可用
- 《!--suppress ALL --> 在Android XML 文件中的用途是什么?
<!--suppress ALL --> 在Android XML 文件中的用途是什么? 警告一次又一次地出现在谷歌地图的 XML 文件中,但是当我使用时,所有警告都被禁用.那么压制所有评 ...
- 在安装Windows时手动创建分区
目前硬件都已经支持UEFI模式启动了,而且硬盘容量普遍大于MBR磁盘能支持的最大2TB的容量.所以在安装Windows系统的时候优先选用UEFI启用,并将磁盘配置为GPT模式以支持更大的容量.而且Wi ...