0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

有哪些可以在手机上敲Python代码的App

Wildesbeast 来源:今日头条 作者:IT生涯 2020-02-06 12:16 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

相信多数安卓用户都使用过Qpython这款移动端的Python编辑器吧?之前我也研究过一阵子这个工具,但因为一次简单的爬虫让我对它失望之极。Qpython不支持lxml这个模块,然而python中lxml作为最底层的模块,不管是爬虫还是文档解析,都需要使用它。所以,Termux应运而生….

Termux不仅可以帮助你学习和使用Linux系统,更可以通过安装各种插件,当做我们python全栈开发利器!今天我就带大家了解下,如何在手机上玩转Python 爬虫、jupyter notebook、git代码托管、Web开发等等全套炫酷的功能!

Termux介绍

Termux是一个Android终端的Linux环境仿真器。主要的是它无需root,就可以直接进行安装使用。可以使用apt包管理器或者这个工具推荐的pkg命令来定制安装其他的工具。何为其他工具?Linux下你能想到的工具,都可以去尝试,多数都可以直接安装,但也有部分工具需要你转个弯,比如在手机中安装mysql数据库!

Termux的Wiki官网:https://wiki.termux.com/wiki/Main_Page

Termux的Wiki

官网中可以看到推荐的下载方式是Google Play 和F-Droid。Google Play在手机上安装太麻烦了,所以推荐F-Droid,虽然它比较慢…当然你可以离线下载Termux的apk文件,虽然这样没办法获取更新。安装果果橙比较简单,下载F-Droid,完成安装后搜索Termux,下载即可。

Python开发者桌面

刚才说到Termux的简单介绍与下载方式,那么下载完成,安装的只是这个工具,而非我们的Python开发者桌面。Termux安装完成首次进入会进行相关的初始化工作,等待1-2分钟即可(此时需要联网下载工具)。截图如下:

安装Termux.png

之后就该进入我们的DIY时间了!

1.更新源:

为了我们能获取到最新的插件信息,需要更新一下镜像源列表

1pkg update

2pkg upgrade

3pkg install python python-dev

2.安装python及pip

系统为我们安装了最新的python3.7.4版本,紧追时尚潮流….

1pkg install python python-static

2pip install --upgrade pip

3.安装依赖插件

这一步阻塞了很长的时间,可以看到网上针对lxml的安装不管是linux系统还是咱们的Termux,都存在这很多的求助帖。

lxml安装报错

按照很多热心网友的回答去尝试安装插件,和其他解决办法,都没有成功。

多数的报错是提示libxml2插件未安装,可明明安装了,之后查阅资料了解python在使用该插件的使用需要通过clang插件的编译后才能使用,但是安装后有提示conv.h的文件无法获取等等。这个问题断断续续卡了我两天你的时间,光卸载安装Termux就搞了几次,每月20G的流量我就剩5G了…最终找齐了所有插件总结给大家:(最新安装依赖详见留言)

1pkg install libxml2 libxml2-dev libxslt libxslt-dev libiconv libiconv-dev libclang clang libzmq libzmq-dev libc++

2pip install lxml

lxml安装成功

目录说明

首先我们输入termux-setup-storage将手机目录共享给termux,完成后会在home目录下多出一个storage的文件夹。

目录说明

了解Linux的朋友应该比较清楚创建链接与挂载点的问题,手机的目录在Termux的/data/data/com.termux/files/home/storage/shared内。那么同样的,我们可以将手机的代码目录映射到Termux中。命令如下:

ln -s /data/data/com.termux/files/home/storage/shared/Codes_Repository ~/Codes

然后,我们将小说下载器的脚本Novels.py丢到手机的Codes_Repository,再去Termux中看看是否同步

目录共享

无意中暴露了我的Mate 20X,哈哈…之所以当时要买7.2英寸的20x就是为了将手机打造成python开发工具。

优化编辑器

大家都知道Linux环境下开发python,大神们都推荐的是vi,用其他的工具都显得不高端…那么如何优化我们的编辑器呢?安装vi的哥哥vim,针对vim下开发python安装vim-python 代码

1# 安装vim vim-python

2pkg install vim vim-python

3# 创建vim配置文件

4vim .vimrc

5# 添加 vim 配置文件

6set fileencodings=utf-8,gb2312,gb18030,gbk,ucs-bom,cp936,latin1

7set enc=utf8

8set fencs=utf8,gbk,gb2312,gb18030

9# 保存

10:wq

11# 立即生效

12source .vimrc

来看看vim-python的编码效果:

vim-python

vim-python

手机编程

最后来说说Termux的python开发问题,今天有朋友问到,Termux下写Python代码应该用什么编辑器呢?只用vim没有代码联想,写起来很麻烦…

你可以尝试使用Jupyter Notebook …

如果是按照我之前教程安装的Termux,那么直接pip install jupyter即可完成安装…

Termux权限设置

默认情况下Termux安装到手机后,是没有后台运行权限的,即如果你离开Termux桌面,那么将无法继续使用相关的web项目。你需要关闭手机启动管理的自动管理,然后添加上允许后台活动。

Termux设置

之后再输入jupyter notebook,即可达到后台运行的效果。

jupyter notebook

成功启动jupyter notebook后,会在命令行生成一个带token的url,复制它到你的手机浏览器上,现在在你的手机上好好练习代码吧…

代码运行

一道Leetcode上的练习题,在jupyter notebook上运行是不是完美….

爬虫代码运行

怎么样,不管是原生的vim还是大家喜爱的jupyter notebook,展示效果还算不错吧!再让我们执行一段爬虫代码

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Linux
    +关注

    关注

    88

    文章

    11628

    浏览量

    217970
  • APP
    APP
    +关注

    关注

    33

    文章

    1589

    浏览量

    75641
  • python
    +关注

    关注

    57

    文章

    4857

    浏览量

    89581
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    华为手机如何定时发送消息

    手机如何定时发送消息   在华为手机上定时发送短信是一种方便的方式,可以在选定的时间发送信息而不必一直守在手机旁边, 很多人希望提前准备生日祝福、提醒或者工作信息, 华为
    的头像 发表于 11-22 09:52 813次阅读

    ota升级完成后,bootloader没有将download区的新代码搬运到app区?

    ota升级完成后,bootloader没有把download区的新固件搬运到app区,版本也改了,可以保证是和上次的版本不一样,也没有打印任何错误的信息,可以明确的是它能正确把固件烧录至
    发表于 09-29 10:04

    termux如何搭建python游戏

    Pygame),确保已安装`clang`编译器:`apt install -y clang` 3. 权限问题:若需访问手机文件,安装`termux-setup-storage`并授权存储访问权限。 通过以上步骤,即可在Termux中搭建完整的Python游戏开发环境
    发表于 08-29 07:06

    怎么导出python边缘计算中的APP,想进行修改又找不到源码?

    怎么导出python边缘计算中的APP,想进行修改又找不到源码
    发表于 08-06 07:33

    python app不能运行怎么解决?

    ;python_agent[1241]: xmlrpc request method supervisor.stopProcess failed;python_agent[1241]: xmlrpc request method supervisor.stopProces
    发表于 08-06 06:27

    HBM应用在手机上,可行吗?

    。近日著名博主《数码闲聊站》又继续爆料,华为会先于苹果落地HBM DRAM。   但HBM在手机应用真的可行吗?   从成本的角度来看,HBM首先在制造工艺上相比传统的LPDDR更复杂。为了实现高带宽
    的头像 发表于 07-13 06:09 6675次阅读

    基础篇3:掌握Python中的条件语句与循环

    : # 条件为真时执行的代码块 如果条件表达式为真(即结果为True),则执行紧随其后的代码块。 elif和else语句 当多个条件需要检查时,可以使用elif和else。eli
    发表于 07-03 16:13

    HarmonyOS 代码工坊的指尖开发,让 APP 开发所见即所得

    过去,移动端 APP 的开发,往往是开发者在桌面仿真界面上的一场“隔空演练”。 虽然市面上已经一些简化开发的工具,可以在开发桌面提供模拟移动端效果的窗口,但终究不是真实的移动端设备。 现在,开发
    的头像 发表于 06-24 12:08 633次阅读
    HarmonyOS <b class='flag-5'>代码</b>工坊的指尖开发,让 <b class='flag-5'>APP</b> 开发所见即所得

    python入门圣经-高清电子书(建议下载)

    和Pygal 等强大的Python 库和工具介绍,以及列表、字典、if 语句、类、文件与异常、代码测试等内容; 第二部分将理论付诸实践,讲解如何开发三个项目,包括简单的Python 2D 游戏开发如何利用数据
    发表于 04-10 16:53

    零基础入门:如何在树莓派上编写和运行Python程序?

    在这篇文章中,我将为你简要介绍Python程序是什么、Python程序可以用来做什么,以及如何在RaspberryPi上编写和运行一个简单的Python程序。什么是
    的头像 发表于 03-25 09:27 1524次阅读
    零基础入门:如何在树莓派上编写和运行<b class='flag-5'>Python</b>程序?

    STM32F103 flash的app区域上一次的残留代码,会造成死机怎么解决?

    ,发现是freertos的运行崩了,与堆栈有关,与哪一个具体变量有关没有看到)。 左图绿色框框起来的代码,就是残留的代码,就是没有被bootloader擦掉的。从图中可以看到,这段残留代码
    发表于 03-11 07:29

    创建了用于OpenVINO™推理的自定义C++和Python代码,从C++代码中获得的结果与Python代码不同是为什么?

    创建了用于OpenVINO™推理的自定义 C++ 和 Python* 代码。 在两个推理过程中使用相同的图像和模型。 从 C++ 代码中获得的结果与 Python*
    发表于 03-06 06:22

    使用Python实现xgboost教程

    首先,你需要确保已经安装了 xgboost 库。你可以使用 pip 来安装它: bash复制代码pip install xgboost 如果你使用的是Anaconda,也可以通过conda来安
    的头像 发表于 01-19 11:21 2214次阅读

    EMMC存储在手机中的应用

    的存储技术,它集成了控制器和NAND闪存在一个单一的封装中。这种集成设计简化了手机制造商的设计和制造过程,因为它减少了需要集成的组件数量。EMMC遵循JEDEC标准,支持多种接口,如eMMC 4.5、eMMC 5.0和eMMC 5.1等,每个版本都有不同的性能和功能。 EMMC
    的头像 发表于 12-25 09:36 2510次阅读

    通过安卓手机查找IP地址步骤

    我们在使用安卓手机的时候,可以在设备上通过一些方法来查到IP地址,而IP地址也分为公网IP地址和私网IP地址,具体怎么查找可以看下面步骤。 一、如何在手机上查找私网IP地址 方法一:
    的头像 发表于 12-12 13:53 4509次阅读
    通过安卓<b class='flag-5'>手机</b>查找IP地址步骤