python 提供了getopt模組來獲取命令列引數。
$ python test.py arg1 arg2 arg3python 中也可以所用sys的sys.argv來獲取命令列引數:
注:sys.argv[0] 表示指令碼名。
test.py 檔案**如下:
#!/usr/bin/python執行以上**,輸出結果為:# -*- coding: utf-8 -*-
import sys
print '引數個數為:', len(sys.argv), '個引數。'
print '引數列表:', str(sys.argv)
$ python test.py arg1 arg2 arg3getopt模組是專門處理命令列引數的模組,用於獲取命令列選項和引數,也就是sys.argv。命令列選項使得程式的引數更加靈活。支援短選項模式(-)和長選項模式(--)。引數個數為: 4 個引數。
引數列表: ['test.py', 'arg1', 'arg2', 'arg3']
該模組提供了兩個方法及乙個異常處理來解析命令列引數。
getopt.getopt 方法用於解析命令列引數列表,語法格式如下:
getopt.getopt(args, options[, long_options])方法引數說明:
另外乙個方法是 getopt.gnu_getopt,這裡不多做介紹。
在沒有找到引數列表,或選項的需要的引數為空時會觸發該異常。
異常的引數是乙個字串,表示錯誤的原因。屬性msg和opt為相關選項的錯誤資訊。
usage: test.py -i -otest.py 檔案**如下所示:
#!/usr/bin/python執行以上**,輸出結果為:# -*- coding: utf-8 -*-
import sys, getopt
def main(argv):
inputfile = ''
outputfile = ''
try:
opts, args = getopt.getopt(argv,"hi:o:",["ifile=","ofile="])
except getopt.getopterror:
print 'test.py -i -o '
sys.exit(2)
for opt, arg in opts:
if opt == '-h':
print 'test.py -i -o '
sys.exit()
elif opt in ("-i", "--ifile"):
inputfile = arg
elif opt in ("-o", "--ofile"):
outputfile = arg
print '輸入的檔案為:', inputfile
print '輸出的檔案為:', outputfile
if __name__ == "__main__":
main(sys.argv[1:])
$ python test.py -husage: test.py -i -o $ python test.py -i inputfile -o outputfile
輸入的檔案為: inputfile
輸出的檔案為: outputfile
命令列引數
c 程式設計師參考 main方法可以使用引數,在這種情況下它採用下列形式之一 static int main string args static void main string args main方法的引數是表示命令行引數的string陣列。通常通過測試length屬性來檢查引數是否存在,例如 ...
命令列引數
c程式中的mian具有兩個形參。int main int argc,char argv argc 命令列引數的數目 argv 指向一組引數值的第乙個元素 每個元素都是指向乙個引數文字的指標 指標陣列 每個元素都是乙個字元指標,陣列末尾是乙個null指標,argc的值和這個null都用於確定實際傳遞了...
命令列引數
命令列引數,也是一種形式的引數。它與我們常見的函式的引數的不同點在於,他是傳遞命令列的引數。c 中可以指定任意數量的命令列引數存放在args陣列中。args陣列的第乙個元素是執行該程式的.exe檔名。向其中新增命令列引數的方法 開啟專案屬性頁面 解決方案資源管理器中,所在專案的properties選...