如何免安裝使用 Python?推薦 17 個線上的 Python 直譯器!

2022-11-03 06:02:23

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