想在iPad上写代码?这几款app不可少
itomcoil 2025-07-14 17:26 15 浏览
iPad作为一个我们可以方便携带的便携设备,有着比笔记本更灵活的使用场景。如果能用iPad来写代码的话,对于很多朋友来说相信都是一大好消息。下面推荐几款能够在iPad上编写和运行python程序的app,当然也有介绍能够运行多种语言的app,希望给想在iPad上编程的朋友带来帮助。大家也可以推广到其他编程语言,寻找合适的app!
本文会以在 iPad上写python代码为主,依次介绍carnets、pythonista和code app等几款软件,也会给大家介绍几款提升iPad上写代码效率的工具。但是本文介绍的几款app中,不止有python的编译器,也有可以编译运行多种不同语言的app,还会推广涉及到远程编译的方法以实现多种不同语言的编译运行,其中本人觉得最好用的code app放在最后讲解,也是可以编译和运行语言种类最多的app,一定要看到最后噢!!
一、carnets(免费,仅支持python)
简介
carnets是一款基于jupyter的python编译器,在app store里面搜索carnets,会出现两个版本,一个为carnets-jupyter,另一个为carnets-jupyter(with scipy),它们之间区别在于with scipy版本加入了scipy、sklearn、seaborn以及coremltools这几个库,对于需要用python从事科研的朋友很有用。此外,也支持安装一些纯python的第三方库。
carnets-jupyter(with scipy)还支持notebook和jupyterlab的切换。但是缺点在于占用内存空间更大(1.6G,对比之下标准版本为1.1G)
具体使用介绍(以scipy版本为例)
首先打开app,点击creat document,就会自动创建一个Untitled.ipynb文件并打开
可以看到,界面与电脑上的jupyter notebook是几乎一样的,操作方法也与电脑上的版本类似。
我们点击左上角的文件,再点击打开,就能来到文件管理界面
再点击Nbextension,我们就能看到jupyter notebook的插件功能,和电脑上是完全一致的,把上面的勾选关掉,就可以使用插件功能了。
除此之外,在系统设置里面,可以更改语言设置,也可以更改文件储存位置等,也可以在distribution里面把软件界面设置成retrolab,点击view再点击open jupyterlab,我们就能打开jupyterlab的界面,在iPad上使用jupyterlab进行编程。
其余的使用与电脑端类似,可以参考电脑端jupyter的使用方法。
简单测试
我们简单跑一下代码,以及尝试装一个纯python的第三方库
总结
总的来说,carnets很好解决了在iPad上使用python进行编程的问题,并且支持许多热门的第三方库,如numpy、matplotlib、pandas等,并且对于(with scipy)版本还支持scipy、sklearn等,在很大程度上能满足python学习的需求,也能满足一定的专业程序员的需求。
不足之处在于,notebook可能对于一部分人来说使用起来不习惯,以及受限于iPad OS,只能安装一些纯python的库,一些深度学习的第三方库可能安装不了。
二、pythonista(68元,仅支持python)
简介
pythonista是一款python的IDE,界面较为特别,内置了numpy、matplotlib等热门第三方库。但是遗憾的是并不支持安装第三方库(好像有曲线救国的方法)。它有很多特色的小功能,比如内置了很多生动形象的小程序,对于初学者来说是很好的学习参考,对于已经掌握python的程序员来说也可以在此基础上开发一些小程序。pythonista支持python ui的开发,能做一些很精美的程序。
具体使用介绍
打开app,点击New file,点击Empty script来创建一个新的python文件,把路径设置在This iPad然后点击create创建就可以。可以看到除了纯python文件,也可以创建带UI的python文件(这方面我不是很擅长,读者可以自行尝试)。
除此之外,点击左上角可以查看文档,再点击返回可以查看全局文档,进行文档管理。
点击This iPad下的example可以查看软件自带的一些小程序,点击运行可以查看对应的功能,比如这个时钟小程序
除此之外还有各种形式的程序,各位读者可以自行查看
简单测试
我们在pythonista上创建一个脚本,并运行一个简单的例子
可以看出,运行结果是正确的。
总结
pythonista是一款比较专注于python,界面比较独特的app。上面支持普通的python脚本文件,也支持python UI文件,并且提供了大量的例子,可供初学者学习,也增加了趣味性。
缺点是由于官方并不支持自行通过pip安装第三方库,使用起来只能局限于app自带的库,会有所不方便。app也已经有很长一段时间没更新了,所以体验可能稍差。
三、Code app(30元,支持多种语言)
简介
Code app是一款界面类似vscode的代码编辑器,能够支持5种语言的本地编译以及40多种语言的在线编译。运行界面和操作逻辑与vscode非常相似,内置了linux终端,支持近70种命令(ls、cd、nslookup等),并且支持快捷键自定义,对鼠标对支持也非常良好,功能十分强大。
具体使用介绍
打开app,可以看到与vscode类似的界面,我们可以创建新文件,也可以打开已有文件,也可以使用git clone来拷贝github上的项目。
我们点击新文件,可以创建不同语言的文件,我们在这里创建一个python脚本文件
创建文件后,可以看到运行的是本地的python3.9.2。输入几行代码,可以看到代码高亮与电脑端vscode是类似的,但是在写代码过程中不支持代码提示,这点比较遗憾
打开左下角的设置,可以更改主题或字体大小,也可以查看app支持的本地和远程编译的语言。
终端(terminal)可以按左边的按钮打开或者关闭,可以支持的命令有70多种,使用起来十分方便。使用pip命令也可以安装纯python第三方库。
其他使用可以参考电脑端vscode的使用,感兴趣的读者可以下载使用一下。
简单测试
我们运行上面的python代码,运行正常
我们再测试一下别的语言,如C++,运行结果也正常。
其他语言以及在线编译功能读者可以自行尝试。
总结
code app是一款功能非常强大的iPad代码编辑器,支持多种语言的编译功能,文件管理也非常完善,可以在一定程度上满足专业程序员的需求。
美中不足的是code app不支持代码提示,也不支持debug,期待后续更新可以加上这些功能。如果实现的话,应该算得上是iPad上最好用带有本地编译功能的编译器了。
四、提高写代码效率的配件
首先键盘肯定是要配一个的,要不然在屏幕上打字一来效率不高,二来屏幕大小就这么点,再被键盘占去一部分空间后写代码就会显得很局促。
在这里我给大家推荐一款罗技的无线蓝牙键盘,我自己本人也是罗技K380用户,键盘的手感很不错,质感也很好,最主要的是这款键盘方便携带,与iPad简直是绝配!!!并且支持三台不同设备之间的自由切换,可以同时配对你的iPad、电脑和手机,实现设备间办公无缝衔接。K580也是不错的选择,提供了一个平板或者手机的支撑位,使用起来更方便,并且也能支持两台设备之间的切换。大家可以按需选择。
除此之外,鼠标也可以配备一个,这样可以获得更加接近电脑上写代码的感觉,提升效率。大家也可以考虑一下罗技家的蓝牙鼠标,非常轻薄便于携带,是随时随地在iPad上写代码的好帮手!
五、写在最后
以上我们总结了几款使用体验非常不错的python编译器,以及code app这个能够支持多种语言的编译器:
- carnets是基于jupyter的,在进行科研或者数据处理的时候非常好用;缺点是对于不习惯jupyter的用户可能试用体验不习惯。
- pythonista是面向UI设计为主的,也可以运行一些简单的python脚本,同时提供了一些生动的例子兼具了趣味性;但是官方不支持安装第三方库,对于专业程序员可能很多想要的功能不能实现,并且软件已经长时间没更新,不排除作者弃更的可能。
- code app是功能最全面的一款app,界面与电脑端的vscode类似,支持几款常用语言的本地编译和数十种语言的在线编译,也能支持markdown和html等语言的预览,功能想对齐全;缺点是暂时不支持代码提示以及debug,对于专业程序员来说可能有时候会比较头疼。
除了上面提到的几款app,其实iPad上也有不少其他好用的编译器,比如pyto等。也有许多面向其他语言的编译器,大家可以在app store上寻找。
但是由于iPad上只支持纯python的第三方库,有些专业程序员可能对其他第三方库有需求,或者说想运行编译其他更多语言,这个问题可以通过远程编译的方式来解决。如果我们有云服务器或者个人主机的话,可以通过在主机上配置code-server或者jupyter server的方式在iPad上实现远程编译,这个具体的教程就不在这展开了,感兴趣的读者可以搜索网上的教程,我后续可能也会写一篇关于通过远程服务器在iPad上写程序的文章,欢迎大家关注!
以上有错误的地方也欢迎大家指正,互相交流!
相关推荐
- Filter函数在WPS里的正确用法,官方教程里都没有说......
-
Filter函数是office365新增的筛选函数,WPS也紧跟添加了它。但在二个软件中的使用方法却完全不同。office365有单元格溢出功能,只需要输入一个Filter公式即可完成数据筛选。但在W...
- 跳过VLOOKUP天坑!FILTER函数10个招式让同事以为你开了外挂?
-
还在为VLOOKUP的"一对多"限制头疼?是否还在为INDEX+MATCH的嵌套抓狂?今天教你用Excel新晋顶流——FILTER函数,10个高能用法让你秒变数据操控大师!用法1:精准...
- Filter函数的三种用法,比用VLOOKUP一对多查询,更加灵活方便
-
文章最后有彩蛋!好礼相送!Excel秘籍大全,正文开始FILTER函数可以基于定义的条件筛选一系列数据。在没有filter函数之前,如果实现一对多查询,常见的是构建辅助列,然后使用VLOOKUP+R...
- Filter函数公式,快速实现订单核对,1分钟学会
-
举个例子,我们有一份公司所有的订单源数据表格,这里我们只用两列信息来模拟,实际可能有很多列数据,几百行数据然后我们有另外一个表,里面有部分已经处理过的订单数据,如下所示,这里举例是4个,实际可能有上百...
- FILTER函数结合及经典用法2:一对多筛选
-
FILTER经典用法2:一对多筛选。FILTER函数的经典用法2:一对多的筛选。比如左边这个表格,需要根据部门筛选出每个部门的人员,应该怎样做?·把鼠标放在单元格内,在编辑栏输入等于FILTER。·第...
- 干掉VLOOKUP,FILTER函数9大用法全解析!
-
1.单条件基础筛选场景:筛选销量>5000的记录公式:=VSTACK(A1:D1,FILTER(A2:D9,D2:D9>5500))解析:A2:D9为需要筛选的数据区域,D2:D9&...
- Excel新函数公式Filter,秒杀VLOOKUP,人人必学
-
以前VLOOKUP公式是必学的公式,自从新版本更新之后,VLOOKUP已经变得可有可无了,但是新出来的Filter函数公式,你必须学会,它非常的强大,工作中用到非常频繁1、Filter公式背景在学会这...
- 第一讲:filter的基本用法及拓展_filter详解
-
全能查找函数filter的基本用法及拓展初学者,务必观看。进阶者,可互相学习,欢迎在回复中补充新用法。首次撰写此函数相关内容,若有不足之处,请予以指教,请勿诋毁,多谢。提示:以下内容以WPS最新版本为...
- 测一测你是什么粒子?_测测你是什么质
-
大亚湾实验。|图片来源:RoyKaltschmidt,LawrenceBerkeleyNationalLaboratory/WikimediaCommons2020年12月12日,大亚湾...
- SpringBoot如何处理配置文件的密文
-
在SpringBoot应用中,直接在配置文件(如application.yml或application.properties)中明文存储数据库密码、API密钥等敏感信息是严重的安全风险,...
- 大语言模型解释Python的 类装饰器
-
一、什么是类装饰器?在Python中,装饰器(Decorator)是一种高阶函数,它接受另一个对象(通常是函数或类),并返回一个经“增强”处理后的新对象。我们常见的是对函数进行装饰:@my_dec...
- Thymeleaf_thymeleaf属于前端吗
-
一、Thymeleaf简介Thymeleaf是用来开发Web和独立环境项目的服务器端的Java模版引擎Spring官方支持的服务的渲染模板中,并不包含jsp。而是Thymeleaf和Freemarke...
- Win9去哪了?Win10避讳Windows95、98
-
10月1日,微软在旧金山发布了新一代操作系统预览版。但不是名为Windows9,而是win10,有业内人士猜测,跳过9而取10为命名是为了预示十全十美。可是小编还觉得9还代表长长久久呢!恐怕这里又说...
- 仓颉编程练习-字符串操作_仓颉编译器
-
main.cj:importstd.convert.Parsablemain():Int64{//字符串比较lets1:String="abc"...
- 一课译词:断断续续_一课译词:断断续续的意思
-
PhotobyMikefromPexels“断断续续”,或“时断时续”,意思是时而中断,时而继续地接连下去(continuefromtimetotime)。与英文惯用语“fitsan...
- 一周热门
- 最近发表
- 标签列表
-
- ps图案在哪里 (33)
- super().__init__ (33)
- python 获取日期 (34)
- 0xa (36)
- super().__init__()详解 (33)
- python安装包在哪里找 (33)
- linux查看python版本信息 (35)
- python怎么改成中文 (35)
- php文件怎么在浏览器运行 (33)
- eval在python中的意思 (33)
- python安装opencv库 (35)
- python div (34)
- sticky css (33)
- python中random.randint()函数 (34)
- python去掉字符串中的指定字符 (33)
- python入门经典100题 (34)
- anaconda安装路径 (34)
- yield和return的区别 (33)
- 1到10的阶乘之和是多少 (35)
- python安装sklearn库 (33)
- dom和bom区别 (33)
- js 替换指定位置的字符 (33)
- python判断元素是否存在 (33)
- sorted key (33)
- shutil.copy() (33)