詳解 argparse庫使用

2021-10-13 05:19:48 字數 2113 閱讀 4388

argparse是python內建的命令列引數解析模組,可以用來為程式配置功能豐富的命令列引數,方便使用,本文總結一下其基本用法。

argparse是python標準庫裡面用來處理命令列引數的庫

命令列引數分為位置引數和選項引數:

簡介:用於對python指令碼的解析,比如像

檢視***x.py的幫助資訊

.

/***x.py -h

import argparse

# 建立解析器

parser = argparse.argumentparser(description =

'this is a test'

)parser.parse_args(

)

$ python test.py -

-help..

.

import argparse

parser = argparse.argumentparser(description =

'this is a test'

)parser.add_argument(

"-p"

,"--port"

,help

='increase output port'

)# 定義了可選引數-p和--port,賦值後,其值儲存在args.port中(其值都是儲存在最後乙個定義的引數中)

args = parser.parse_args(

)print

(args.echo)

argparse.argumentparser()方法引數須知:一般我們只選擇用description

prog=none - 程式名

description=none, - help時顯示的開始文字

epilog=none, - help時顯示的結尾文字

parents=, -若與其他引數的一些內容一樣,可以繼承

formatter_class=argparse.helpformatter, - 自定義幫助資訊的格式

prefix_chars=』-』, - 命令的字首,預設是『-』

fromfile_prefix_chars=none, - 命令列引數從檔案中讀取

argument_default=none, - 設定乙個全域性的選項預設值,一般每個選項單獨設定

conflict_handler=『error』, - 定義兩個add_argument中新增的選項名字發生衝突時怎麼處理,預設處理是丟擲異常

add_help=true - 是否增加-h/–help選項,預設是true)

add_argument()方法引數須知:

name or flags… - 必選,指定引數的形式,一般寫兩個,乙個短引數,乙個長引數

使用時候:

$ python test.py -p 50

或$ python test.py -

-port 50

指定型別

我們也可以在新增引數的時候指定其型別。

import argparse

parser = argparse.argumentparser(description =

'this is a test'

)parser.add_argument(

"square"

,help

="display a given number"

,type

=int

)# 指定給square的引數為int型別

可選引數

import argparse

parser = argparse.argumentparser(

)parser.add_argument(

"-v"

,help

="increase output verbosity"

)args = parser.parse_args(

)if args.v:

print

("v turned on"

)

Python庫之argparse使用

argsparse是python的命令列解析的標準模組.import argparse parser argparse.argumentparser description 命令列中傳入乙個數字 parser.add argument square help 請輸入乙個數字 type int par...

argparse的簡單使用

這個是針對我做區塊鏈的一些demo時需要用到的,僅把用到了的一些操作記錄,argparse很強大,更多細緻的操作可以參考 argparse模組如其名字一樣,可以對命令列引數進行解析,可以讓人輕鬆編寫使用者友好的命令列介面 用ls命令進行舉例 localhost ls bench.py hello.c...

python使用argparse模組寫命令列內容

寫命令python和c是有很大區別的。c可以通過mian函式,而python可以通過呼叫內建模組。import argparse parse argparse.argumentparser parse.add argument bug feature help file that only cont...