溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python包argparse模塊常用方法有哪些

發(fā)布時間:2021-06-04 14:53:44 來源:億速云 閱讀:164 作者:小新 欄目:開發(fā)技術

這篇文章給大家分享的是有關Python包argparse模塊常用方法有哪些的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

argparse介紹

??argparse包用于解釋命令行參數(shù)。這里給出幾個常用的方法。

# 創(chuàng)建解析器對象
# @para: description:描述信息
Arg = ArgumentParser(description='An example for Python package argparse~')

# 添加參數(shù)
# @para: 后面舉例子再細說
Arg.add_argument()

# 解析參數(shù)
# @return: 返回的arg是一個對象,里面的屬性和屬性值來自命令行
arg = Arg.parse_args()

# 創(chuàng)建互斥組
# @description:互斥組內的參數(shù)不能同時出現(xiàn)
Arg.add_mutually_exclusive_group()

argparse實例

基本使用

import argparse
Arg = argparse.ArgumentParser(description='An example for Python package argparse~')
arg = Arg.parse_args()

不添加任何參數(shù),cmd運行結果:

Python包argparse模塊常用方法有哪些

默認可以使用-h或者–help查看參數(shù)列表。因為沒有添加任何參數(shù),因此,這里只有一個-h??梢钥吹絛escription的描述信息也可以在-h下打印出來。

添加參數(shù)

import argparse
Arg = argparse.ArgumentParser(description='An example for Python package argparse~')
Arg.add_argument('a')
arg = Arg.parse_args()
print("arg 的內的參數(shù){}".format(arg.a))
args = vars(arg)
print("arg 的內的參數(shù){}".format(args['a']))

Python包argparse模塊常用方法有哪些

添加參數(shù)后,需要在運行后面帶上參數(shù),否則報錯。

添加可選參數(shù)

前面添加的參數(shù),一定要傳入?yún)?shù)值。

import argparse
Arg = argparse.ArgumentParser(description='An example for Python package argparse~')
Arg.add_argument('-a','-all',help='add all para!')
arg = Arg.parse_args()
print("arg 的內的參數(shù){}".format(arg.a))
args = vars(arg)
print("arg 的內的參數(shù){}".format(args['a']))

只需在參數(shù)前加上-(用于一個字母,例如-h)或者--(用于多個字母,例如--help),即可選擇是否需要傳入?yún)?shù)。

Python包argparse模塊常用方法有哪些

但是如果指定了參數(shù),后面一定要跟上參數(shù)值,否則會報錯。例如:

Python包argparse模塊常用方法有哪些

在添加參數(shù)的時候,加上action="store_true",

import argparse
Arg = argparse.ArgumentParser(description='An example for Python package argparse~')
Arg.add_argument('-a','-all',help='add all para!',action="store_true")
arg = Arg.parse_args()
print("arg 的內的參數(shù){}".format(arg.a))
args = vars(arg)
print("arg 的內的參數(shù){}".format(args['a']))

Python包argparse模塊常用方法有哪些

當我們帶上-a運行,在代碼里得到的a值為True,不帶則為False。這個是不是和-h類似,當我們帶上-h,里面有個if判斷,就把相關信息print出來了。

固定類型type

import argparse
Arg = argparse.ArgumentParser(description='An example for Python package argparse~')
Arg.add_argument('-a','-all',type = int ,help='add all para!',action="store_true")
arg = Arg.parse_args()
print("arg 的內的參數(shù){}".format(arg.a))
args = vars(arg)
print("arg 的內的參數(shù){}".format(args['a']))

Python包argparse模塊常用方法有哪些

可選值和默認值

import argparse
Arg = argparse.ArgumentParser(description='An example for Python package argparse~')
Arg.add_argument('-a','-all',type = int ,help='add all para!',choices=[0,1,2,3],default='3')
arg = Arg.parse_args()
print("arg 的內的參數(shù){}".format(arg.a))
args = vars(arg)
print("arg 的內的參數(shù){}".format(args['a']))

Python包argparse模塊常用方法有哪些

互斥參數(shù)

import argparse
Arg = argparse.ArgumentParser(description='An example for Python package argparse~')
Gro = Arg.add_mutually_exclusive_group()
Gro.add_argument('-a','-all',help='add all para!')
Gro.add_argument('-b','-ball',help='add ball para!')

arg = Arg.parse_args()
args = vars(arg)
if args.get('a',None):
    print("arg 的內的參數(shù)b:{}".format(args['a']))
if args.get('b', None):
    print("arg 的內的參數(shù)b:{}".format(args['b']))

Python包argparse模塊常用方法有哪些

可以看出,在互斥組內,參數(shù)不可以同時出現(xiàn),僅可出現(xiàn)一個或者都不出現(xiàn)。所以在互斥組內添加的參數(shù)必須是可選參數(shù),也就是以-或者--開頭的。 

感謝各位的閱讀!關于“Python包argparse模塊常用方法有哪些”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。

AI