1、簡介
所有UNIX程序甚至那些具有圖形用戶界面(Graphical User Interface,GUI)的程序,都能接受和處理命令行選項。對于某些程序,這是與其他程序或用戶進行交互的主要手段。具有可靠的復雜命令行參數處理機制,會使得您的應用程序更好、更好用。
Getopt是一個專門設計來減輕命令行處理負擔的庫函數,主要用來分析命令行參數,不僅python語言中有getopt,C語言中也有getopt。下面主要來介紹python中getopt的使用方法。
2、模塊說明
導入模塊:import getopt
python方法,使用語法:getopt.getopt(args, options[, long_options])
參數說明:options是單字符,long_options表示字符串
返回結果:是一個list,每個list的項為(選項,值)的元組對
具體實例:#ping -c 12 -6 -s 1024 –help –size 1024
處理結果:
getopt.getopt(sys.argv[1:], ”c:s:6”, [“size=”,”help”])
python基礎教程。[('-c', '12'), ('-6', ''), ('-s', '1024'), (“—help”,””), (“--size”,”1024”)]
c:表示是一個短選項,前面用’-‘表示,緊隨著c之后的元素與c組成一個元組;
6:表示是一個短選項,前面用’-‘表示,與6組成元組的元素是空字符;
help:表示是一個長選項,前面用’--‘表示,與空字符組成一個元組;
size:表示是一個長選項,前面用’--‘表示,與1024組成一個元組;
3、模塊使用
python 字符串。options = ["server", "listen=", "server_name=", "include="]
try:
opts,var = getopt.getopt(argvlist[1:], "", options)
for opt,val in opts:
…
except getopt.GetoptError, err:
python類?…
“hp:i:”
,p:和?i:
["help","ip=","port="]
息,比如?[('-i','127.0.0.1'),('-p','80')]?;
,比如:['55','66']長選項為"--"加上一個單詞
python爬蟲教程、取得命令行參數
在使用之前,首先要取得命令行參數。使用sys模塊可以得到命令行參數。
import sys
print sys.argv
然后在命令行下敲入任意的參數,如:
python get.py -o t --help cmd file1 file2
python和java,結果為:
['get.py', '-o', 't', '--help', 'cmd', 'file1', 'file2']
可見,所有命令行參數以空格為分隔符,都保存在了sys.argv列表中。其中第1個為腳本的文件名。選項的寫法要求
對于短格式,"-"號后面要緊跟一個選項字母。如果還有此選項的附加參數,可以用空格分開,也可以不分開。長度任意,可以用引號。如以下是正確的:
-o
-oa
python有什么用,-obbbb
-o bbbb
-o "a b"
對于長格式,"--"號后面要跟一個單詞。如果還有些選項的附加參數,后面要緊跟"=",再加上參數。"="號前后不能有空格。如以下是正確的:
--help=file1
而這些是不正確的:
python3。-- help=file1
--help =file1
--help = file1
--help= file1
如何用getopt進行分析使用getopt模塊分析命令行參數大體上分為三個步驟:1.導入getopt, sys模塊2.分析命令行參數3.處理結果第一步很簡單,只需要:import getopt, sys
第二步處理方法如下(以Python手冊上的例子為例):try:
python .get。opts, args = getopt.getopt(sys.argv[1:], "ho:", ["help", "output="])
except getopt.GetoptError:
# print help information and exit:
1.處理所使用的函數叫getopt(),因為是直接使用import導入的getopt模塊,所以要加上限定getopt才可以。2.使用sys.argv[1:]過濾掉第一個參數(它是執行腳本的名字,不應算作參數的一部分)。3.使用短格式分析串"ho:"。當一個選項只是表示開關狀態時,即后面不帶附加參數時,在分析串中寫入選項字符。當選項后面是帶一個附加參數時,在分析串中寫入選項字符同時后面加一個":"號。所以"ho:"就表示"h"是一個開關選項;"o:"則表示后面應該帶一個參數。4.使用長格式分析串列表:["help", "output="]。長格式串也可以有開關狀態,即后面不跟"="號。如果跟一個等號則表示后面還應有一個參數。這個長格式表示"help"是一個開關選項;"output="則表示后面應該帶一個參數。5.調用getopt函數。函數返回兩個列表:opts和args。opts為分析出的格式信息。args為不屬于格式信息的剩余的命令行參數。opts是一個兩元組的列表。每個元素為:(選項串,附加參數)。如果沒有附加參數則為空串''。
版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。
工作时间:8:00-18:00
客服电话
电子邮件
admin@qq.com
扫码二维码
获取最新动态