自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

懶人必備神器 !一個(gè)創(chuàng)意十足的 Python 命令行工具

開發(fā) 開發(fā)工具
Try 是一個(gè)非常實(shí)用的命令行工具,功能可以說完全擊中我的痛點(diǎn),能把這樣一個(gè)庫(kù)做出來,真的是創(chuàng)意十足,再一次印證 Python 是懶人第一語言 。。

當(dāng)聽到某些人說 xx 庫(kù)非常好用的時(shí)候,我們總是忍不住想要去親自試試。

有一些庫(kù),之所以好用,是對(duì)一些庫(kù)做了更高級(jí)的封閉,你裝了這個(gè)庫(kù),就會(huì)附帶裝了 n 多依賴庫(kù),就前一篇文章介紹的 streamlit 來說,依賴包就達(dá) 90 幾個(gè)之多?

比百度全家桶,還 tm 的全家桶啊…

也正是因?yàn)楹ε聲?huì)污染我的全局 Python 環(huán)境,我通常在試用新包的時(shí)候,都會(huì)使用 venv 創(chuàng)建虛擬環(huán)境,再去安裝,完事之后,再清理虛擬環(huán)境即可。

有沒有發(fā)現(xiàn),整個(gè)流程,其實(shí)還是挺麻煩的。

剛好昨天晚上,Github 上瞎逛,被我發(fā)現(xiàn)一個(gè)庫(kù),可以解決我一直以來的煩擾。

這個(gè)庫(kù)叫 trypackage,為試庫(kù)而生的庫(kù)。

當(dāng)你使用 try xx 命令時(shí),它會(huì)做哪些事呢?

  • 安裝指定版本的 Python 解釋器
  • 創(chuàng)建臨時(shí)的虛擬環(huán)境
  • 激活虛擬環(huán)境
  • 在虛擬環(huán)境中安裝你要試用的 Python 庫(kù)
  • 直接進(jìn)入 Python Shell 模式
  • 自動(dòng)將你要試用的庫(kù)導(dǎo)入進(jìn)來

1. 如何安裝

一條命令就可以安裝它

  1. python3 -m pip install trypackage 

可以看到 trypackage 只依賴一個(gè) click 命令行庫(kù),還是很輕量的

其實(shí)不是這樣,try 會(huì)基于 virtualenv 創(chuàng)建虛擬環(huán)境,因此還要安裝 virtualenv 和 virtualenvwrapper

  1. python3 -m pip install virtualenv virtualenvwrapper 

2. 基本使用

使用 try requests,try 就會(huì)創(chuàng)建一個(gè)虛擬環(huán)境,然后在該虛擬環(huán)境中,安裝 requests ,安裝完成后,自動(dòng)進(jìn)入 Python Shell 的模式,并且自動(dòng)導(dǎo)入好你要試用的包

最貼心的是,試用完后,退出 Python Shell ,會(huì)自動(dòng)清理掉虛擬環(huán)境。

3. 更多用法

指定 python 版本

我的環(huán)境沒有安裝 Python 3.8,通過 -p 參數(shù),可以指定 Python 3.8 ,安裝的過程太快,快得讓我有點(diǎn)懷疑這是不是真正的去安裝 Python 3.8 解釋器了。

也可以直接指定本地的 Python 版本,例如

  1. try requests -p /usr/bin/python3.7.1 

指定運(yùn)行模式

Try 直接的運(yùn)行模式非常多

1、當(dāng)你不指定時(shí),默認(rèn)使用 python shell 的模式

  1. # 二者等價(jià) 
  2. try requests 
  3. try requests --shell python 

2、使用 ipython 有兩種指定方式

  1. # 二者等價(jià) 
  2. try requests --ipython 
  3. try requests --shell ipython 

3、使用 ptpython 或者 ptipython

這兩種模式都有代碼提示與自動(dòng)補(bǔ)全功能

4、使用 bpython 模式

Bpython 的代碼提示與補(bǔ)全比 ptpython 、ptipython ,更強(qiáng)一點(diǎn),其他的區(qū)別還沒試用到。

在編輯器中打開

  1. try requests --editor 

指定 Github 倉(cāng)庫(kù)包

  1. # 語法示例 
  2. try <user>/<repo>  
  3.  
  4. # 安裝 Github 上的 Kenneth/requests 上的 master 版本 
  5. try kennethreitz/requests   

指定已經(jīng)存在的虛擬環(huán)境

  1. try requests --virtualenv ~/.try/sandbox  

持久化虛擬環(huán)境

默認(rèn)情況下,你退出后,會(huì)自動(dòng)清理掉虛擬環(huán)境,若有特殊需要,可指定 --keep 參數(shù)來持久化虛擬環(huán)境

指定虛擬環(huán)境的目錄

默認(rèn)情況下,try 會(huì)將虛擬環(huán)境創(chuàng)建在一個(gè)默認(rèn)的目錄中,這個(gè)目錄比較深,不容易記住,你可以指定 --tmpdir 參數(shù),告訴 try 要將虛擬環(huán)境創(chuàng)建在這里,這個(gè)參數(shù)對(duì)于想要持久化虛擬環(huán)境的人會(huì)很有用。

  1. try requests --tmpdir ~/.try 

 4. 配置文件

try 雖然提供命令行入?yún)⒌姆绞絹碜R(shí)別用戶選項(xiàng),但對(duì)于一些用戶來說,更希望能一次性修改 try 的默認(rèn)選項(xiàng),而不用每次都指定多個(gè)參數(shù)。

這時(shí)候,可以在你的 APP 目錄下新增一個(gè) config.ini 文件,內(nèi)容模板如下

  1. [env] 
  2. virtualenv=~/.try/sandbox 
  3. python=3.8 
  4. shell=ipython 
  5. keep=false 
  6. always_use_editor=false 
  7. tmpdir=~/.try 

所謂的 APP 目錄,在不同的系統(tǒng)中是不一樣的,可以使用如下代碼來查看

  1. >>> import click 
  2. >>> click.get_app_dir("try"
  3. '/Users/iswbm/Library/Application Support/try' 
  4. >>> 

有了 config.ini,再次 try ,就會(huì)發(fā)現(xiàn)效果與配置一樣的預(yù)期一致。

5. 總結(jié)一下

Try 是一個(gè)非常實(shí)用的命令行工具,功能可以說完全擊中我的痛點(diǎn),能把這樣一個(gè)庫(kù)做出來,真的是創(chuàng)意十足,再一次印證 Python 是懶人第一語言 。。

本文轉(zhuǎn)載自微信公眾號(hào)「Python編程時(shí)光」,可以通過以下二維碼關(guān)注。轉(zhuǎn)載本文請(qǐng)聯(lián)系Python編程時(shí)光公眾號(hào)。

 

責(zé)任編輯:武曉燕 來源: Python編程時(shí)光
相關(guān)推薦

2022-01-26 18:59:08

Python工具

2011-06-17 16:49:05

Cocoa蘋果

2024-10-30 09:58:41

2021-05-17 10:32:10

命令行工具GitHub代碼

2022-07-25 10:07:26

Python可視化技巧

2022-10-09 10:11:30

Python爬蟲神器

2019-06-10 15:00:27

node命令行前端

2016-08-10 12:41:00

Linux工具bcShell

2012-07-11 13:35:25

UnixLinux

2019-09-09 15:43:29

UnixLinux命令行

2022-02-17 18:21:47

工具HTTPie客戶端

2019-05-30 10:40:04

ddgrLinuxDuckDuckGo

2020-12-08 08:46:07

GoJava工具

2018-07-05 08:30:54

Python命令行工具shell

2022-07-13 08:21:38

開源命令行工具Linux

2016-09-23 20:16:23

TaskwarriorLinux命令行工具

2021-08-17 09:35:26

Linux命令Nginx

2022-04-05 00:18:33

工具終端命令行

2011-10-09 16:20:08

MongoDBJournaling

2018-06-12 15:10:11

Linuxvim命令PacVim
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)