一、nomodulenamedparse概述
nomodulenamedparse是Python中的argparse模塊的重要子模塊,它是專門用於解析命令行參數的。nomodulenamedparse模塊“顯式”的定義了命令行選項,程序使用-nomodulenamedparse模塊會自動提供幫助文檔,並在用戶輸入不符合要求的參數時提供錯誤信息。
在Python中,當我們編寫一個命令行工具時,我們需要定義哪些命令可以被識別、哪些選項可以被設置、還需要確定輸入和輸出。nomodulenamedparse是Python官方標準庫中的一個模塊,可以幫助我們完成這個任務。
二、nomodulenamedparse使用步驟
1、定義解析器對象:實例化一個ArgumentParser()對象來存儲將要在命令行中使用的參數。
2、添加參數:向ArgumentParser對象中添加參數。
3、解析參數:解析命令行參數並把它們存儲為python對象。
三、示例代碼
import argparse parser = argparse.ArgumentParser(description='命令行描述') parser.add_argument("-i", "--input", help="輸入文件名稱", required=True) parser.add_argument("-o", "--output", help="輸出文件名稱", required=True) parser.add_argument("-v", "--verbose", help="詳細輸出結果", action="store_true") parser.add_argument("-p", "--port", type=int, help="服務器監聽端口號") args = parser.parse_args() print(args.input) print(args.output) print(args.verbose) print(args.port)
四、解析步驟詳解
1、定義解析器對象
parser = argparse.ArgumentParser(description='命令行描述')
ArgumentParser()構造函數中可以指定一些參數,這裡我們可以指定description參數來提供一些描述信息,這個信息將會在解析器出現幫助信息時使用。
2、添加參數
parser.add_argument("-i", "--input", help="輸入文件名稱", required=True) parser.add_argument("-o", "--output", help="輸出文件名稱", required=True) parser.add_argument("-v", "--verbose", help="詳細輸出結果", action="store_true") parser.add_argument("-p", "--port", type=int, help="服務器監聽端口號")
在ArgumentParser對象中,可以通過add_argument()方法來添加參數,這裡我們添加了4個參數,每個參數都有short name和long name兩個選項,help參數為該參數的幫助信息,required參數指定該參數是否必須,默認為False,action參數可以指定當這個選項出現時所要執行的操作,比如store_true表示選項出現時存儲True值,type表示該參數的類型。
3、解析參數
args = parser.parse_args()
使用parse_args()方法來解析參數,同時該方法還會返回一個包含所有參數值的Namespace對象。
五、參數類型
ArgumentParser支持很多不同類型的參數,包括:str、int、bool、float、file等。另外,我們也可以自定義類型。
六、小結
本文介紹了nomodulenamedparse模塊的使用方法、詳細解釋了如何定義一個解析器對象、添加參數、解析參數,以及介紹了不同類型的參數。
原創文章,作者:GWVFN,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/334803.html