碎片化學習Python的又一神作:termux

各位學友,還記得《安卓運行Python的神器:QPython》這篇文章嗎?

使用QPython能夠讓我們隨時隨地的學習Python,堪稱良心之作。

此文發表後在知乎上得到了200多個贊,雖然不多,但也說明還是得到了不少學友的認可。

但是不同的手機不同的品牌會有所差距,導致部分學友在使用上存在部分錯誤。

這可怎麼辦呢?

有人推薦了Termux這款APP,表示使用起來非常爽,經過一段時間的試用,確實非一般的感覺。所以在此分享給大家。

什麼是Termux?

據Termux官網介紹,Termux是一個Android終端模擬器和Linux環境應用程序,運行於內部存儲(不在SD卡上),無需root或設置。 系統自動進行最小化安裝,使用APT軟體包管理器安裝其它軟體程序。同時還具備以下功能:

  • 享受bash和zsh shell
  • 使用nano和vim編輯文件
  • 通過SSH訪問伺服器
  • 用gcc和clang編譯代碼
  • 使用python控制台作為一個袖珍計算器
  • 用git和subversion檢出項目
  • 用frotz運行基於文本的遊戲

總之功能十分強大~!

下載安裝

我們可以從各大軟體市場下載Termux並安裝(我的版本是0.49),經過一段載入等待後,我們進入這個界面

改源

因為這款APP是國外開發的,下載軟體的話都是從國外的伺服器上下載,速度可想而知,所以我們改成國內的,讓速度飛起來。這裡我們使用的是清華大學開源軟體鏡像站。具體的步驟如下:

  • 使用http服務
  • 使用

apt edit-sources

  • 如果提示

$ apt edit-sources E: Sub-process editor returned an error code (100)

  • 則需要設置一下$EDITOR:

export EDITOR=viapt edit-sources

  • 打開你常用的文本編輯器,替換成如下內容

# The termux repository mirror from TUNA:deb [arch=all,arm] Tsinghua Open Source Mirror stable main

如果你的android不是arm的CPU,上面的[]里的內容會有所區別,參照原來的配置修改一下。

  • 使用https服務

如果你想通過 https 來訪問 TUNA 的鏡像,需要先安裝如下包:

apt install apt-transport-https

之後類似上面的配置,但是把url改成mirrors.tuna.tsinghua.edu.cn

上述的配置操作過程如下:

https://www.zhihu.com/video/928727404233527296

完成配置後記得使用

apt-get update

更新一下啊!

安裝軟體

先看看支持哪些軟體的安裝吧

apt list

媽呀,軟體太多。一張圖都放不下了,看看Python相關的吧。Python3支持3.6.4的。

常用軟體安裝

我們安裝幾個常用的軟體。

  • apt install python 默認安裝的是Python3,畢竟python3是未來啊。
  • apt install clang 大名鼎鼎的c++ 編譯器,用來編譯c或c++程序。
  • apt install vim-python termux自帶vi,如果想使用vim(畢竟神之編輯器),則必須安裝。因為我們要學習Python所以選擇安裝vim-python。
  • apt install git 這個碼農都懂的。

我們還看看在命令行中運行Python程序的效果吧。

https://www.zhihu.com/video/928727643992498176

完美運行。

第三方庫的使用

我們以安裝requests為例,測試一下。

完美安裝,寫一個測試程序看看吧。順便使用一下我們剛才安裝的Vim吧。具體的操作過程如下:

https://www.zhihu.com/video/928727774821232640

運行我們手機上的程序

這裡部分參考了部分網文。

我們提到的路徑都在termux的私有的內部存儲(private internal storage)路徑下,這類存儲的特點是termux應用內部的、私有的,一旦termux被卸載,這些數據也將不復存在。這裡Termux提供了一個名為 termux-setup-storage 的工具,可以讓你在Termux下訪問和使用shared internal storage和external storage;該工具是 termux-tools 的一部分,你可以通過apt install termux-tools來安裝這些工具。完成後效果如下:

執行termux-setup-storage,如需授權請同意。

我們看到了當前目錄下出現了storage這個目錄,進入目錄可以看見有以下幾個目錄:dcim、movies、pictures、downloads、music、shared

這些目錄分別對應了手機當中的部分目錄,因為各個手機會略有不同,建議自己通過cd、ls命令看一下。這裡主要把shared目錄說明一下。

這個目錄叫shared,顧名思義就是共享了手機中的內部存儲,如下圖(是用ES查看的):

我們只需把需要運行的文件放到這個目錄就行了。

特別提醒:我手機中是沒有SD卡的,目前大部分內部存儲較大的手機一般用戶也很少使用SD卡。如果你的手機中有SD卡,顯示的目錄會略有不同。

現在我們來看下具體的操作示例:

https://www.zhihu.com/video/928728144939208704

完美運行。

不知道大家注意到沒有這次我們使用的輸入鍵盤是不是不一樣。是的,我們使用的黑客鍵盤(Hacker『s Keyboard)

輸入法

黑客鍵盤的使用

一款功能強大的全鍵盤式虛擬鍵盤輸入工具,比Android自帶的那種全鍵盤更接近我們日常所用的真實電腦鍵盤鍵位,碼農專用。特別是配合Vim使用,效率較高。

當然黑客鍵盤的使用不是本文的重點,關注微信公眾號號:學點編程吧,發送:黑客鍵盤可以獲得相應的使用幫助文檔,軟體下載可以到各大軟體市場下載即可。

沒有黑客鍵盤怎麼辦?

前面的三個視頻,都是使用的系統自帶的輸入法,照樣實現了游標操作,怎麼做到的呢?

其實,Termux已經給我準備好了。

使用像Alt、Ctrl、Esc鍵是使用命令行界面終端所必需的。系統自帶的輸入法沒有怎麼辦。 為此,Termux使用音量減小按鈕來模擬Ctrl鍵。 例如,在觸摸鍵盤上按音量減小+ L發送與在硬體鍵盤上按Ctrl + L相同的輸入。

使用Ctrl與鍵組合使用的結果取決於使用哪個程序,但是對於許多命令行工具,以下快捷鍵均可用:

  • Ctrl + A→移動游標到行首
  • Ctrl + C→中止(發送SIGINT到)當前進程
  • Ctrl + D→註銷終端會話
  • Ctrl + E→移動游標到行尾
  • Ctrl + K→從游標刪除到行尾
  • Ctrl + L→清除終端
  • Ctrl + Z→掛起(發送SIGTSTP到)當前進程
  • Ctrl + Alt + C→打開新的會話(只適用於黑客鍵盤)

當然還有:

  • Volume Up+E → Escape key
  • Volume Up+T → Tab key

限於篇幅,這裡不做詳細解釋,關注微信公眾號號:學點編程吧,發送:termux,可以獲得全部的文檔。

好了,今天的介紹就到這裡了,下期我們再見。

等等!你都介紹了兩款安卓系統運行學習Python的神器了,那蘋果手機上呢?

Yes!蘋果手機上當然也有啦!Pythonista 3!

在這裡:Pythonista 3 on the App Store

這款是收費APP,有沒有興趣眾籌一下,我也來寫一個Pythonista的教程!


推薦閱讀:

從零開始寫Python爬蟲 --- 導言
Python爬蟲學習系列教程

TAG:Python | Python教程 | Linux |