使用過linux/unix的人都會知道,命令列下的很多命令都需要引數,在c語言中新增和解析引數比較繁瑣。python中提供了optparse模組可以非常方便地處理命令列引數。
1 命令列引數的樣子
我們一般在使用命令列程式的時候,可能會看到大約這樣的樣子(這是我寫的乙個簡單命令列幫助列表):
usage: run.py [options] argsoptions:
--version show program'
s version number and exit
-h, --help show this help message and
exit
-c client_num, --clients=client_num
number of clents
-t time, --time=time test time in seconds
在c語言中,我們可能需要使用printf來列印所有的內容,但是請注意上面的內容不是手動列印的,而是optparse自動生成的。下面一點一點來解釋這個過程。
2 optparse簡單使用過程
當然,首先得匯入模組:
from optparse import optionparser
我們一般使用的是optparse的optionparser類。
例項化乙個optionparse類,在例項化時可以實現上面命令列幫助資訊中的第一行:
usage = "usage: %prog [options] args
"parser = optionparser(usage,version="
%prog 0.1
")
簡單解釋一下。我們可以向optionparser傳入引數,上面傳入的是usage和version。當然不傳入引數也是可以的。常用引數有:
usage:就是展示的第一行內容,預設是「%prog [options]」
version:傳入這個引數可以讓幫助資訊增加--version選項,用來顯示定義的軟體版本資訊。
description:描述這個程式。
add_help_option:這個引數產生-h選項來顯示幫助資訊,預設是開啟的。
prog:可以看到上面使用了%prog,這個就是產生所執行的程式的程式名。(在我的例子裡是run.py)
然後,我們需要新增必要的選項資訊。
parser.add_option("-c", "
--clients
",dest="
client_num
",help="
number of clents
")
使用add_option可以新增選項。具體使用方法見:
這樣我們就向程式新增了選項,有了選項我們就該根據選項進行相應的操作了。
(options, args)=parser.parse_args()
得到option和args後再根據值進行相應的操作。
非常簡單,非常好用。
和 在python中使用
給定兩個大小為 m 和 n 的有序陣列 nums1 和 nums2。請你找出這兩個有序陣列的中位數,並且要求演算法的時間複雜度為 o log m n 你可以假設 nums1 和 nums2 不會同時為空。示例 1 nums1 1 3 nums2 2 則中位數是 2.0 示例 2 nums1 1 2 ...
python中使用bp Python ocbp包
概述ocbpy是乙個python模組,它可以在aacgm座標和磁性之間進行轉換。相對於開闊地調整緯度和當地時間的座標系 閉合場線邊界 ocb 這對統計特別有用 磁極的研究,其中相對於固定磁座標的網格劃分 系統會導致不同物理區域的平均值,例如極光 和極冠測量。此座標繫在 chisham,g.2017 ...
在python中使用websocket
介紹一款很帥的外掛程式autobahnpython,通過它可以在python中很方便的使用websocket進行通訊 基於twisted框架 這個外掛程式真正強大的地方是它提供了乙個 發布 訂閱模式,具體內容有空再寫,先簡單介紹一下如何建立傳統的連線。建立伺服器 必須的模組 from twisted...