Python 提供了 getopt 模塊來獲取命令行參數。
Python 中也可以所用 sys 的 sys.argv 來獲取命令行參數:
注:sys.argv[0] 表示腳本名。
test.py 文件代碼如下:
python argparse、
執行以上代碼,輸出結果為:
getopt模塊是專門處理命令行參數的模塊,用于獲取命令行選項和參數,也就是sys.argv。命令行選項使得程序的參數更加靈活。支持短選項模式(-)和長選項模式(--)。
該模塊提供了兩個方法及一個異常處理來解析命令行參數。
getopt.getopt 方法用于解析命令行參數列表,語法格式如下:
getopt.getopt(args, options[, long_options])
爬蟲python?方法參數說明:
另外一個方法是 getopt.gnu_getopt,這里不多做介紹。
在沒有找到參數列表,或選項的需要的參數為空時會觸發該異常。
異常的參數是一個字符串,表示錯誤的原因。屬性 msg 和 opt 為相關選項的錯誤信息。
假定我們創建這樣一個腳本,可以通過命令行向腳本文件傳遞兩個文件名,同時我們通過另外一個選項查看腳本的使用。腳本使用方法如下:
usage: test.py -i <inputfile> -o <outputfile>
test.py 文件代碼如下所示:
#!/usr/bin/python
# -*- coding: UTF-8 -*-import sys, getoptdef main(argv):inputfile = ''outputfile = ''try:opts, args = getopt.getopt(argv,"hi:o:",["ifile=","ofile="])except getopt.GetoptError:print 'test.py -i <inputfile> -o <outputfile>'sys.exit(2)for opt, arg in opts:if opt == '-h':print 'test.py -i <inputfile> -o <outputfile>'sys.exit()elif opt in ("-i", "--ifile"):inputfile = argelif opt in ("-o", "--ofile"):outputfile = argprint '輸入的文件為:', inputfileprint '輸出的文件為:', outputfileif __name__ == "__main__":main(sys.argv[1:])
python getopt,執行以上代碼,輸出結果為:
$ python test.py -h
usage: test.py -i <inputfile> -o <outputfile>$ python test.py -i inputfile -o outputfile
輸入的文件為: inputfile
輸出的文件為: outputfile
版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。
工作时间:8:00-18:00
客服电话
电子邮件
admin@qq.com
扫码二维码
获取最新动态