苹果公司在 2021 年 3 月发布了 M1 iPad Pro ,其实我很想知道在 iPad 上编程是怎样的体验。虽然 iPadOS 仍然无法提供原生 Python IDE,但事实证明,在 iPad 上用 Python 编写代码实际上非常容易,尤其是如果你愿意在 Jupyter Notebooks 中工作。

以下是您现在可以在任何 iPad 上使用 Python 编写代码的五种方法。

1、a-Shell

a-Shell 为您的 iPad 或 iPhone 提供了一个 Unix 风格的终端,而且它是完全免费的,非常强大。

安装并打开 a-Shell 后,键入 help 可以快速了解该应用程序:

a-Shell 带有 vimed 用于编辑文件,它包括开箱即用的 Python 3.9。这是在 vim 中编辑 Python 文件的样子:

a-Shell 与 iPadOS 15 的多任务功能完美搭配。您可以打开新窗口,将 a-Shell 与另一个应用程序并排放置,并且我最喜欢在滑动模式下使用 a-Shell。

我在我的 iPad 上做了大量的阅读工作。当我遇到想要在 Python REPL 中检查的内容时,能够从 iPad 的右侧滑入,快速检查 REPL 中的内容,然后通过向右滑动来关闭应用程序:

您可以在 a-Shell 中使用 pip 安装 Python 包,只要这些包是纯 Python 即可。这对很多人来说是一个严重的限制,但它确实允许您安装一些非常棒的软件包:

除了是在 iPad 上使用 Python 的好方法之外,a-Shell 还有许多其他有用的功能。您可以浏览 iPad 的文件系统、使用 curl 传输文件、生成 SSH 密钥、SSH 到远程服务器等等。您甚至可以用 C 和 C++ 编写程序并在 iPad 上运行它们。

a-Shell 的主要缺点之一是缺乏对 Python 虚拟环境的支持。这意味着 a-Shell 非常适合进行测试,或进行一些基本的纯 Python 编程,但它不太适合专业开发。

2、Carnets

Carnets 是一款免费的独立 Jupyter notebook 应用程序,可在 iPad 和 iPhone 上使用。无需连接到外部 Jupyter 服务器,您可获得完整的 Python 和 Jupyter 实现,以及一些有用的 Python 包,包括 NumPy、pandas 和 Matplotlib。

您可以创建、查看和编辑 notebook 文件,包括您在其他地方创建或别人发送给您的 notebook 文件。我最喜欢它的一点是它“有效”。下载该应用程序,几分钟后您就可以在 iPad 上运行  Jupyter notebook 了。

Carnet 的界面看起来就像浏览器中的 Jupyter。但所见即所得,这里没有任何花里胡哨的东西。

如果您需要安装 Carnets 未附带的软件包,您可以在笔记本单元内使用 %pip install 来安装该软件包:

要查看通过 Carnets 获得的所有 Python 包,请运行 %pip list

App Store 中有两个版本的 Carnets:

  1. Carnets – Jupyter

  2. Carnets – Jupyter (with scipy)

Carnets – Jupyter(with scipy) 包括一些额外的包,用于在 iPad 上进行机器学习:scipy、seaborn、sklearn 和 coremltools。如果您负担得起额外的空间,我强烈建议您下载 Carnets – Jupyter(with scipy) 而不是基本的 Carnets 应用程序。

与 a-Shell 一样,Carnets 应用程序不允许您创建隔离的 Python 环境。

3. Juno

Juno 是另一款适用于 iPad 的 Jupyter notebook 应用程序,自称是 Jupyter IDE。与 Carnets 不同的是,Juno 售价 15 美元,并带有一些不错的奖励功能。

Juno 凭借其时尚的 iPad 界面脱颖而出:

您可以通过在单元格内按 Shift + Enter 或点击屏幕右下角的蓝色Run Cell按钮来运行单元格。

闪电按钮可让您快速访问一些常见任务。您可以将单元格类型从代码更改为 Markdown,上下移动单元格,以及剪切、复制、粘贴和删除单元格:

虽然 Carnets 可以从 iPad 上的任何位置打开 Jupyter notebooks,但该界面对 iPad 不太友好。将此与 Juno 的文件选择器进行对比,后者在 iPad 和 iOS 设备上真的很舒服:

Juno 的另一个亮点是内置的类似 IDE 的选项卡完成和工具提示:

像 Carnets 一样,Juno 带有一套内置软件包。但是你不能像在 Carnets 中一样在单元格中运行 %pip list 来查看它们:

Juno 中的软件包管理实际上有点令人失望,尤其是对于一个售价 15 美元的应用来说。

我找不到 Juno 预装的软件包的完整列表,但这里有一些开箱即用的导入:

要安装包,请单击屏幕顶部中心的notebook名称,然后选择安装 Python 包。您将看到以下对话框:

像 Carnets 和 a-Shell 一样,您只能安装纯 Python 包。但与 Carnets 和 a-Shell 不同的是,您安装的软件包的任何依赖项都不会自动安装。您需要一个一个地手动安装它们。

Juno 软件包管理器的一个好处是,您有机会在安装包之前查看包的一些元数据,包括依赖项——您可以按一下按钮进行安装:

正如我之前提到的,您不能在 Juno 中使用 %pip list 查看已安装到 Juno 环境中的软件包。您必须打开 Files 应用程序并导航到 Juno 设备存储中的 site_packages/文件夹:

如果要删除已安装的软件包之一,则需要从 site_packages/中手动执行此操作。我觉得这是一个很大的缺点。

尽管包管理器很笨重,但 Juno 看起来确实比 Carnets 好得多,而且制表符补全和工具提示确实提高了生产力。如果这些功能对您很重要,并且您愿意花 15 美元以上的价格,那么 Juno 是一个不错的选择。

4. Juno Connect

Juno Connect 是一个 Jupyter notebook客户端应用程序,可用于访问远程服务器上的 Jupyter。所以,从技术上讲,Python 并没有在你的 iPad 上运行,但 Juno Connect 提供了一个漂亮的界面来处理远程 Jupyter notebook服务器。您可以花 10 美元从 App Store 购买它。

首次启动 Juno Connect 时,您将看到一个屏幕,其中包含一些可供试用的notebook,以及连接到远程notebook服务器的几个选项:

开箱即用的 Juno Connect 支持服务,例如 Cocalc 和 Binder。您还可以连接到托管在其他地方的 Jupyter 服务器,例如在 Digital Ocean droplet 上。

当您连接到notebook服务器时,您将看到如下所示的屏幕,您可以在其中创建新notebook或选择打开一个:

打开或创建新notebook后,您将看到一个与典型 Juno 界面完全相同的界面。由于 notebook 在外部服务器上运行,因此您可以访问所有典型的 Jupyter 功能,包括不适用于仅限本地版本的 Juno 的 %pip魔法:

Juno Connect 的一个不错的功能是能够将远程notebook导出到 iPad 上的本地文件:

您甚至可以将notebook 导出为新notebook ,允许您保存本地副本以在 Juno 或 Carnets 应用程序中离线使用。

5. Codeanywhere Cloud IDE

我列表中的最后一个选项不是 iPad 应用程序,它不会在你的 iPad 上本地运行 Python,但如果你需要访问一个成熟的开发环境,它绝对是必不可少的。该解决方案就是 Codeanywhere Cloud IDE。

计划起价为每月 6 美元。这将解锁一个完全在您的浏览器中运行的 VS Code 风格的 IDE。

一旦您选择了一个计划并创建了一个帐户,您将被带到您的仪表板,您可以在其中创建用于处理项目的新容器:

当您单击 New Container 时,您将有机会使用一个空白的 Ubuntu Linux 容器或从一些预装了各种语言的预定义容器中进行选择:

创建容器后,它需要几分钟才能启动并在仪表板中可供您使用:

每个容器获得的资源取决于您选择的计划。我的计划给了我 15GB 的存储空间和 4GB 的内存。

单击绿色的 Open IDE 按钮以在新的浏览器选项卡中启动 IDE:

如果您熟悉 VS Code,您会在 Codeanywhere 的 IDE 中感到非常熟悉。它的功能非常全面,包括调试支持:

您甚至可以安装扩展程序!

与此列表中提到的其他选项相比,Codeanywhere 价格昂贵。它还需要互联网连接。但是,我不能没有它。这是我发现在 iPad 上进行硬核编码的最佳方式。

在 iPad 上使用 Python 进行编码的其他方法

我提到的五个工具是我目前在 iPad 上运行 Python 时日复一日使用的工具,但还有许多其他选项值得一提。

Pythonista3

曾经有一段时间 Pythonista3 是一个不错的选择,但在我看来,情况已不再如此。

首先,Pythonista3 似乎完全被抛弃了。最后一个版本是在 iPadOS 14 可用于一年多前发布的。其次,Pythonista3 仅支持 Python 3.6,该版本已于 2021 年 12 月结束生命周期。

PyTo

PyTo 应用程序是 Python-for-iPad 领域的有力竞争者。您可以在本地运行 Python 3.10 并获得良好的 IDE 风格体验,支持编辑多个文件,包括 NumPy、SciPy、Scikit-learn 和 statsmodels 在内的几个包。完整的应用体验费用为 10 美元。

我目前正在尝试使用 PyTo,看看它是否适合我的日常使用!

Google Colab

Google 的 Colab 是基于浏览器的Jupyter notebooks。您的代码在预装了大部分 Python 数据科学包的私有虚拟机上运行。您甚至可以免费使用 GPU,这使 Colab 成为机器学习项目的绝佳选择。

vscode.dev

如果您不需要在本地运行 Python,但想要可靠的 IDE 体验,请查看 vscode.dev。您可以快速克隆外部代码存储库并直接从浏览器开始使用 Python 进行编码。

GitHub Codespaces

我从未使用过 GitHub 的 Codespaces 项目,但如果您在 Team 或 Enterprise 计划中有 GitHub 组织,这可能是一个不错的选择。它看起来与 Codeanywhere 非常相似。

pyodide

pyodide 项目通过将 Python 和 Python 数据科学包中的超过 75 个包全部编译到 WebAssembly中,然后 将它们带到任何浏览器。您可以在 REPL 中尝试 pyodide 并将其添加为书签以便将来快速访问。

iPad + RaspberryPi

另一种选择是通过 USB 将 iPad 连接到 Raspberry Pi,这样您就可以将 Raspberry Pi 作为以太网设备访问。这真的很酷,但就我个人而言,我不想随身携带更多设备。不过,它确实是一个有趣的小项目,并且可以让您访问完整的本地开发服务器。

小结

我很想在 iPad 上看到像 VS Code 这样的 IDE 的原生版本,但好像目前还没有。然而,在 a-Shell、Carnets 和 Codeanywhere 之间,我已经能够通过我的 iPad 进行 Python 开发。

所以,在 2022 年,在 iPad 上用 Python 编码不仅可行,而且非常有趣!

iPad 上进行 Python 开发是怎样的体验?相关推荐

  1. 我的Go+语言初体验——iPad上搭建Go+开发环境(ish版)

    目录 欢迎来到用iPad来学习Go+之旅 一.在 iPad 安装 Go+ 前的准备 1. iSH Shell 的作用 2. 安装 iSH Shell 3. 在 iSH 里安装一些常用软件 apk 命令 ...

  2. 如何在Windows上做Python开发?微软出了官方教程(附链接)

    来源:机器之心 本文附教程,建议阅读5分钟. 本文为你分享微软最近发布的关于在Windows上做Python开发的一系列官方教程. 在Windows上做Python开发太痛苦?微软最近发布了一系列官方 ...

  3. visual studio安装python插件_Visual Studio 2012 Ultimate 上安装 Python 开发插件 PTVS

    Visual Studio 2012 Ultimate 上安装Python 开发插件PTVS 转载于ITNOSE1.我的环境 操作系统:Win7 旗舰版Service Pack 1 VS版本:Micr ...

  4. 在Win上做Python开发?当然是用官方的MS Terminal和VS Code了

    选自 Real Python 作者:Jon Fincher 机器之心编译 在 Windows 上怎样做 Python 开发?是像大神那样使用纯文本编辑器,还是用更加完善的 IDE?到底是用自带的命令行 ...

  5. asp.net web开发步骤_如何在Windows上做Python开发?微软出了官方教程

    机器之心报道 参与:路 在 Windows 上做 Python 开发太痛苦?微软最近发布了一系列官方教程,终于-- 教程地址:https://docs.microsoft.com/zh-cn/wind ...

  6. python 开发板-MicroPython:STM32 上 的 Python 开发

    虽然Python在国外是一门非常火的语言,在黑客界更是赫赫有名,然而中国的大学却极少开设 Python 课程,故而国内 Python 程序员多属自学.而一个没有MCU编程经验的初学者,要想让芯片跑起来 ...

  7. 微软官方教程教你如何在Windows上做Python开发?

    关注上方"深度学习技术前沿",选择"星标公众号", 资源干货,第一时间送达! 教程地址:https://docs.microsoft.com/zh-cn/win ...

  8. ubuntu安装python_使用WSL在Windows上搭建Python开发环境

    简介 2016年,微软推出了Windows Subsystem for Linux(WSL),这使得Windows具有了强大的Unix功能.2019年5月,微软宣布发布了具有更新架构的WSL2,该架构 ...

  9. eclipse配置python环境后啷个写java类_在Eclipse上配置Python开发环境

    问题导读: 1.什么是PyDev?2.如何安装PyDev? 3.安装Eclipse过程中如何解决遇到的问题? 1.jpg (33.67 KB, 下载次数: 3) 2016-3-7 14:31 上传本文 ...

最新文章

  1. jQuery里面的datepicker日期控件默认是显示英文的,如何显示中文或其他语言呢?...
  2. 中蒙最大陆路口岸2018年运行中欧班列1052列
  3. cmd html 查找汉子字,字符串查找 cmd find命令
  4. 【基础算法复习】01背包问题(一)
  5. 重学java基础第二十三课:java基础 注释
  6. 软件项目管理的质量保证
  7. 给排水规范大全2020_住宅电气、给排水、消防安装工程的质量通病分析
  8. 【原创】全面剖析飞凌2440,6410开发板选型指南
  9. 9种对抗电脑辐射的方法
  10. python中英文字频率_python统计文本字符串里单词出现频率的方法
  11. 创建和删除目录mkdir/rmdi
  12. android 音频播放类
  13. python将pdf文件转换成word文档_python实现pdf转word文档
  14. 几个常用的视频分析工具
  15. 使用js正则表达式验证
  16. php公众号关注自动回复内容,微信公众号自动回复内容大全集锦
  17. 小米手环5表盘bin文件解包修改
  18. 道阻且长,行则将至,行而不辍,未来可期
  19. GD32F303固件库开发(17)----内部Flash读写
  20. 10 大话设计模式C++实现之模板方法模式

热门文章

  1. 5GNR漫谈16:OFDM的符号定时同步与偏差(STO)
  2. 英语名词格‘s和s‘的用法
  3. appserv的安装和使用方法。
  4. 乘方负数怎么算用计算机,计算器如何算负数乘方
  5. 计算机及网络技术基础,计算机及网络技术基础.pdf
  6. 三位一体集大乘---论互联网金融战略
  7. Te Amo,我爱你
  8. [转贴]改善太极腿疼良方 及其补充
  9. 消息称谷歌中国总部已陷入瘫痪
  10. 特征提取网络之mobilenet