0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

有哪些可以在手機上敲Python代碼的App

Wildesbeast ? 來源:今日頭條 ? 作者:IT生涯 ? 2020-02-06 12:16 ? 次閱讀

相信多數(shù)安卓用戶都使用過Qpython這款移動端的Python編輯器吧?之前我也研究過一陣子這個工具,但因為一次簡單的爬蟲讓我對它失望之極。Qpython不支持lxml這個模塊,然而python中l(wèi)xml作為最底層的模塊,不管是爬蟲還是文檔解析,都需要使用它。所以,Termux應(yīng)運而生….

Termux不僅可以幫助你學(xué)習(xí)和使用Linux系統(tǒng),更可以通過安裝各種插件,當(dāng)做我們python全棧開發(fā)利器!今天我就帶大家了解下,如何在手機上玩轉(zhuǎn)Python 爬蟲、jupyter notebook、git代碼托管、Web開發(fā)等等全套炫酷的功能!

Termux介紹

Termux是一個Android終端的Linux環(huán)境仿真器。主要的是它無需root,就可以直接進行安裝使用。可以使用apt包管理器或者這個工具推薦的pkg命令來定制安裝其他的工具。何為其他工具?Linux下你能想到的工具,都可以去嘗試,多數(shù)都可以直接安裝,但也有部分工具需要你轉(zhuǎn)個彎,比如在手機中安裝mysql數(shù)據(jù)庫!

Termux的Wiki官網(wǎng):https://wiki.termux.com/wiki/Main_Page

Termux的Wiki

官網(wǎng)中可以看到推薦的下載方式是Google Play 和F-Droid。Google Play在手機上安裝太麻煩了,所以推薦F-Droid,雖然它比較慢…當(dāng)然你可以離線下載Termux的apk文件,雖然這樣沒辦法獲取更新。安裝果果橙比較簡單,下載F-Droid,完成安裝后搜索Termux,下載即可。

Python開發(fā)者桌面

剛才說到Termux的簡單介紹與下載方式,那么下載完成,安裝的只是這個工具,而非我們的Python開發(fā)者桌面。Termux安裝完成首次進入會進行相關(guān)的初始化工作,等待1-2分鐘即可(此時需要聯(lián)網(wǎng)下載工具)。截圖如下:

安裝Termux.png

之后就該進入我們的DIY時間了!

1.更新源:

為了我們能獲取到最新的插件信息,需要更新一下鏡像源列表

1pkg update

2pkg upgrade

3pkg install python python-dev

2.安裝python及pip

系統(tǒng)為我們安裝了最新的python3.7.4版本,緊追時尚潮流….

1pkg install python python-static

2pip install --upgrade pip

3.安裝依賴插件

這一步阻塞了很長的時間,可以看到網(wǎng)上針對lxml的安裝不管是linux系統(tǒng)還是咱們的Termux,都存在這很多的求助帖。

lxml安裝報錯

按照很多熱心網(wǎng)友的回答去嘗試安裝插件,和其他解決辦法,都沒有成功。

多數(shù)的報錯是提示libxml2插件未安裝,可明明安裝了,之后查閱資料了解python在使用該插件的使用需要通過clang插件的編譯后才能使用,但是安裝后有提示conv.h的文件無法獲取等等。這個問題斷斷續(xù)續(xù)卡了我兩天你的時間,光卸載安裝Termux就搞了幾次,每月20G的流量我就剩5G了…最終找齊了所有插件總結(jié)給大家:(最新安裝依賴詳見留言)

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的朋友應(yīng)該比較清楚創(chuàng)建鏈接與掛載點的問題,手機的目錄在Termux的/data/data/com.termux/files/home/storage/shared內(nèi)。那么同樣的,我們可以將手機的代碼目錄映射到Termux中。命令如下:

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

然后,我們將小說下載器的腳本Novels.py丟到手機的Codes_Repository,再去Termux中看看是否同步

目錄共享

無意中暴露了我的Mate 20X,哈哈…之所以當(dāng)時要買7.2英寸的20x就是為了將手機打造成python開發(fā)工具。

優(yōu)化編輯器

大家都知道Linux環(huán)境下開發(fā)python,大神們都推薦的是vi,用其他的工具都顯得不高端…那么如何優(yōu)化我們的編輯器呢?安裝vi的哥哥vim,針對vim下開發(fā)python安裝vim-python 代碼

1# 安裝vim vim-python

2pkg install vim vim-python

3# 創(chuàng)建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開發(fā)問題,今天有朋友問到,Termux下寫Python代碼應(yīng)該用什么編輯器呢?只用vim沒有代碼聯(lián)想,寫起來很麻煩…

你可以嘗試使用Jupyter Notebook …

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

Termux權(quán)限設(shè)置

默認(rèn)情況下Termux安裝到手機后,是沒有后臺運行權(quán)限的,即如果你離開Termux桌面,那么將無法繼續(xù)使用相關(guān)的web項目。你需要關(guān)閉手機啟動管理的自動管理,然后添加上允許后臺活動。

Termux設(shè)置

之后再輸入jupyter notebook,即可達到后臺運行的效果。

jupyter notebook

成功啟動jupyter notebook后,會在命令行生成一個帶token的url,復(fù)制它到你的手機瀏覽器上,現(xiàn)在在你的手機上好好練習(xí)代碼吧…

代碼運行

一道Leetcode上的練習(xí)題,在jupyter notebook上運行是不是完美….

爬蟲代碼運行

怎么樣,不管是原生的vim還是大家喜愛的jupyter notebook,展示效果還算不錯吧!再讓我們執(zhí)行一段爬蟲代碼

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11329

    瀏覽量

    209967
  • APP
    APP
    +關(guān)注

    關(guān)注

    33

    文章

    1575

    瀏覽量

    72611
  • python
    +關(guān)注

    關(guān)注

    56

    文章

    4801

    瀏覽量

    84867
收藏 人收藏

    評論

    相關(guān)推薦

    Python常用函數(shù)大全

    Python 世界里,一些寶藏函數(shù)和模塊,它們可以讓你編程更輕松、代碼更高效。這篇文章將帶你一一認(rèn)識這些神器,讓你的開發(fā)生活瞬間輕松不少!
    的頭像 發(fā)表于 10-27 17:20 ?300次閱讀

    天璣9400首發(fā)端側(cè)AI訓(xùn)練,在手機上就把AI變聰明

    隨著AI技術(shù)的快速發(fā)展,聯(lián)發(fā)科通過天璣9400芯片進一步鞏固了其在手機端側(cè)AI市場的領(lǐng)導(dǎo)地位。作為天璣系列最新的旗艦產(chǎn)品,天璣9400不僅具備強大的AI性能,還首次在手機端實現(xiàn)了生成式AI功能
    的頭像 發(fā)表于 10-14 18:25 ?342次閱讀
    天璣9400首發(fā)端側(cè)AI訓(xùn)練,<b class='flag-5'>在手機上</b>就把AI變聰明

    單片機WiFi模塊怎樣連接手機APP

    連接 :將WiFi模塊與單片機物理連接。 編程單片機 :編寫代碼使單片機能通過WiFi模塊與互聯(lián)網(wǎng)通信。 創(chuàng)建服務(wù)器 :在單片機上創(chuàng)建一個小型服務(wù)器,以便手機APP
    的頭像 發(fā)表于 09-10 15:31 ?1174次閱讀

    單片機STM32可以Python寫嗎?可以的開發(fā)板哪些?

    近年來,隨著嵌入式技術(shù)的發(fā)展,Python語言逐漸被引入到單片機開發(fā)中,尤其是一些高性能的單片機上。這一趨勢給開發(fā)者帶來了極大的便利,尤其是在快速原型設(shè)計和實驗中。本文將詳細(xì)探討STM32單片機是否
    的頭像 發(fā)表于 09-05 08:00 ?4043次閱讀
    單片機STM32<b class='flag-5'>可以</b>用<b class='flag-5'>Python</b>寫嗎?<b class='flag-5'>可以</b>的開發(fā)板<b class='flag-5'>有</b>哪些?

    怎么導(dǎo)出python邊緣計算中的APP

    怎么導(dǎo)出python邊緣計算中的APP,想進行修改又找不到源碼
    發(fā)表于 07-25 06:13

    手機識別不了GATT_SERVER例程中的屬性怎么辦?

    下載GATT_SERVER代碼,在電腦上用bluetooth le explorer可以正確識別服務(wù)和屬性,但在手機上用BLE調(diào)試助手識別的服務(wù)和屬性不正確。 修改GATT_SERVER中的藍牙名稱
    發(fā)表于 07-19 08:08

    手機上網(wǎng)的5個小秘密,你肯定不知道!

    ,需要注冊網(wǎng)絡(luò),并建立空口傳輸通道(即LTE網(wǎng)絡(luò)中說的eRAB),該過程涉及下面一些手機和用戶的身份信息。二、手機上網(wǎng)過程APP、安卓和曉龍芯片是怎么配合的?以安卓
    的頭像 發(fā)表于 06-27 08:05 ?333次閱讀
    <b class='flag-5'>手機上</b>網(wǎng)的5個小秘密,你肯定不知道!

    求助,多塊ESP32開發(fā)板在不依賴手機APP的情況下可否自動組網(wǎng)?

    比如我手頭三塊ESP32-DEVKITC開發(fā)板,里面都燒寫ble_mesh_node的代碼,在不使用手機app連接的情況下,他們可否組網(wǎng)? 如果
    發(fā)表于 06-25 07:11

    ESP32作為藍牙設(shè)備與手機連接時,可以在手機狀態(tài)欄顯示藍牙設(shè)備電量嗎?

    想請問一下,ESP32作為藍牙設(shè)備與手機連接時,可以在手機狀態(tài)欄顯示藍牙設(shè)備電量嗎?我使用ble的battery service發(fā)現(xiàn)無法在手機狀態(tài)欄顯示,還是需要通過第三方軟件才能獲取
    發(fā)表于 06-05 08:00

    【Longan Pi 3H 開發(fā)板試用連載體驗】給ChatGPT裝上眼睛,并且還可以語音對話:7,圖像采集與物體識別

    的采集。 首先先在手機上下載相關(guān)app,android手機的話,去應(yīng)用商城搜索IP Webcam,如果沒有的話,我也把apk放在附件中,大家直接下載就可以。*附件
    發(fā)表于 04-16 16:56

    STM32可以使用手機APP,藍牙或者WIFI軟件升級MCU軟件的方法嗎?

    STM32有方法可以使用手機APP,使用藍牙或者WIFI 軟件升級MCU軟件的方法嗎? 大家討論一下,個人決定這個方向很好用,可能是以后的趨勢。
    發(fā)表于 04-09 07:52

    怎么在手機上做電路仿真

    在手機上進行電路仿真,您可以使用一些專業(yè)的電路仿真應(yīng)用。這些應(yīng)用通常提供豐富的元器件庫、強大的仿真功能和直觀的圖形界面,使得在手機上進行電路設(shè)計和仿真變得方便而高效。
    的頭像 發(fā)表于 03-29 14:25 ?2059次閱讀

    iot可以使用手機開發(fā)APP來云端控制嗎?

    iot可以使用手機開發(fā)APP來云端控制嗎?
    發(fā)表于 03-20 08:00

    谷歌模型軟件怎么用手機下載

    在手機上下載谷歌模型軟件,您可以遵循以下步驟。
    的頭像 發(fā)表于 02-29 18:16 ?1071次閱讀

    Python智能家居系統(tǒng)代碼介紹

    Python智能家居系統(tǒng)是一種基于Python編程語言開發(fā)的智能家居控制系統(tǒng),在現(xiàn)代家庭中得到了越來越廣泛的應(yīng)用。本文將詳細(xì)介紹Python智能家居系統(tǒng)的代碼實現(xiàn),包括系統(tǒng)的結(jié)構(gòu)與功能
    的頭像 發(fā)表于 01-25 09:46 ?1414次閱讀