作者: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

https://pythontutor.com

我最喜欢的基于浏览器的 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

https://replit.com

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

https://trinket.io

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

7、Python Fiddle

http://pythonfiddle.com

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

https://ideone.com

Ideaone 有一个丰富的编辑器,支持包括 Python 在内的多种编程语言(甚至有 Pascal、Fortran、Prolog 和 Cobol 等较老的语言,以及 Brainfuck 和 Intercal 等深奥的编程语言)。

它只有一个支持编写和运行程序的编辑器(有 5 秒的运行时长限制),但没有交互式 Shell。相比于用它写 Python,如果你想练习不太流行的语言,Ideaone 会是个不错的选择。

10、SymPy Live Shell

https://live.sympy.org

一个 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 测试版

https://www.online-python.com

一个简单明了的 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

https://vscode.dev

Visual Studio Code 是一个 Electron app,这意味着它可以作为一个普通的桌面应用程序,也可以基于浏览器来运行。浏览器版本有点受限,相比于其它在线解释器,使用这个在线 IDE 需要更陡的学习曲线。

不过,如果你愿意深入了解它,或者已经使用过 Visual Studio Code,那么可以试试这个基于浏览器的版本。

注:文中图片为译者所加。

首发于 Python猫 ,如需转载,请联系作者

知乎:Python猫

博客园:豌豆花下猫

掘金:豌豆花下猫

CSDN:Python猫

如何免安装使用 Python?推荐 17 个在线的 Python 解释器!的更多相关文章

  1. 零基础入门学习Python(17)--函数:Python的乐高积木

    前言 相信大家小时候都玩过神奇的乐高积木, 只要通过想象力和创造力我们可以拼凑很多神奇的东西,那么随着我们学习的深入,我们编写的Python代码也将日益增加,并且也越来越复杂, 所以呢,我们需要找寻一 ...

  2. Windows(x86,64bit)升级MySQL 5.7.17免安装版的详细教程

    MySQL需要升级到5.5.3以上版本才支持Laravel 5.4默认的utf8mb64字符编码.因此就把MySQL升级了一下,期间还是遇到些小问题,记录一下以供参考. 升级准备 备份之前MySql目 ...

  3. Python的安装以及编译器推荐

    1.Python的安装和环境配置 1.首先进入Python官网https://www.python.org/downloads/下载安装文件. 2.打开安装文件选择自定义(customize inst ...

  4. 免安装方式的Python之VSCode环境配置

    概述 本文旨在介绍免安装方式,在VSCode中搭建Python(3.73)的配置环境.至于Python是什么.它能做些什么,诸如此类的介绍均不在此文中介绍,相信能看此文的人,多多少少都会有些了解. V ...

  5. python免安装版(绿色版)制作

    一.实验环境 1.Windows7x64_SP1 二.需求背景 个人编写了一个软件安装器,用于一键安装开发软件及工具,该工具基于python + pywinauto. 但问题来了,新电脑上未安装pyt ...

  6. 如何在Eclipse中配置Tomcat(免安装版)

    如何在Eclipse中配置Tomcat(免安装版) 2013-10-09 23:19wgelgrsh | 分类:JAVA相关 | 浏览642次 分享到:   2013-10-10 17:10提问者采纳 ...

  7. win10平台mysql5.6.34免安装版(绿色版zip)的配置以及密码和编码设置

    平台:win10 X64 mysql: mysql-5.6.34-winx64.zip 以下所写都是本人测试过的,力争无误.上次发布了,可是发现了一些问题,特地查了一下官方文档(我会说我是用有道词典翻 ...

  8. MYSQL 免安装版(windows 7/64)

    本文介绍在本地安装MYSQL数据库,免安装版相关配置 一.下载 mysql下载地址1:http://dev.mysql.com/downloads/mysql/ 二.解压MySQL压缩包 将已下载的M ...

  9. mysql.zip免安装版配置

    MYSQL ZIP免安装版配置 1. 下载MySQL 选择自己想要的.本次安装.我使用的是mysql-5.6.17-winx64  地址:http://dev.mysql.com/downloads/ ...

随机推荐

  1. CSS 选择器(二):子代选择器(>)

    后代选择器 后代选择器选择的范围广,范围是当前节点的所有子节点,包括其直接子节点. <div id="app"> <div>items-1 <div& ...

  2. ADO.NET数据库开发

    ADO.NET博客  ADO.NET - 张果 - 博客园 (cnblogs.com) ADO.NET官方 ADO.NET | Microsoft Docs EntityFrameWork 开始使用 ...

  3. SpringBoot Excel导入导出

    一.引入pom.xml依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifac ...

  4. 【C++】实现D3D9 的 Inline hook

    [C++]实现D3D9 的 Inline hook   简单介绍一下HOOK原理: 函数调用的过程大致是 先push 参数 进去,再执行 call 函数地址 ,进入函数.此时将所调用的函数的前五个字节 ...

  5. IdentityServer4登录后无法跳转设置策略

    在中间件中手动改变samesite属性为lax就可以解决问题: services.Configure<CookiePolicyOptions>(options => { option ...

  6. Java中数组

    数组的定义格式: 1: 数据类型[] 数组名 2: 数据类型 数组名 动态初始化: 初始化的时候 系统会默认给数组赋值 数据类型[] 变量名 = new 数据类型[数组长度] int[] arr = ...

  7. JDBC连接池&JDBCTemplate

    今日内容 1. 数据库连接池 2. Spring JDBC : JDBC Template 数据库连接池 1. 概念:其实就是一个容器(集合),存放数据库连接的容器. 当系统初始化好后,容器被创建,容 ...

  8. django_day04

    django_day04 路由 from django.conf.urls import url urlpatterns = [ url(正则表达式, views视图,参数,别名), ] 正则表达式 ...

  9. 三门问题模拟对比试验——附VB6和Python3源程序及EXE文件

    三门问题模拟对比试验 [直接跳转到文件下载] 前言 "三门问题"是一个很有意思的概率论问题,涉及贝叶斯公式,是人工智能领域的一个经典问题. 为了直观地研究这个问题,也为了测试一下P ...

  10. OKR之剑(理念篇)01—— OKR带给我们的改变

    作者:vivo互联网平台产品研发团队 一.前言 OKR即目标与关键成果法,起源于英特尔,在谷歌发扬光大.近几年在国内比较火,很多企业都相继引入了OKR的管理方式,小到2-3人的小微初创公司,大到十几万 ...