最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python中argparse模塊及action='store_true'詳解

 更新時(shí)間:2023年02月10日 10:35:50   作者:PoomHey  
argparse?是一個(gè)用來解析命令行參數(shù)的?Python?庫,它是?Python?標(biāo)準(zhǔn)庫的一部分,這篇文章主要介紹了python中argparse模塊及action=‘store_true‘詳解,需要的朋友可以參考下

Python argparse模塊詳解

argparse 是一個(gè)用來解析命令行參數(shù)的 Python 庫,它是 Python 標(biāo)準(zhǔn)庫的一部分?;?python 2.7 的 stdlib 代碼。argparse 模塊使編寫用戶友好的命令行界面變得容易。程序定義了所需的參數(shù),而 argparse 將找出如何從 sys.argv 中解析這些參數(shù)。argparse 模塊還會(huì)自動(dòng)生成幫助和使用消息,并在用戶為程序提供無效參數(shù)時(shí)發(fā)出錯(cuò)誤。

1. 問題描述

經(jīng)常煉丹的朋友對(duì)下面這段代碼非常熟悉。

parser = argparse.ArgumentParser()
parser.add_argument('-c','--clean',action='store_true')
parser.add_argument('-r','--run',action='store_true')
config = parser.parse_args()

然后問題來了,action他的意義在這里是什么?

我去查了查資料,簡(jiǎn)單的做個(gè)總結(jié)

2. add_argument() 方法官方介紹

在這個(gè)方法中,

ArgumentParser.add_argument(name or flags...[, action][, nargs][, const][, default][, type][, choices][, required][, help][, metavar][, dest])

其中

action - 當(dāng)參數(shù)在命令行中出現(xiàn)時(shí)使用的動(dòng)作基本類型。

詳細(xì)來講,就是

action

ArgumentParser 對(duì)象將命令行參數(shù)與動(dòng)作相關(guān)聯(lián)。這些動(dòng)作可以做與它們相關(guān)聯(lián)的命令行參數(shù)的任何事,盡管大多數(shù)動(dòng)作只是簡(jiǎn)單的向 

parse_args() 返回的對(duì)象上添加屬性。action 命名參數(shù)指定了這個(gè)命令行參數(shù)應(yīng)當(dāng)如何處理。供應(yīng)的動(dòng)作有:

'store' - 存儲(chǔ)參數(shù)的值。這是默認(rèn)的動(dòng)作。

3. 實(shí)例測(cè)試與對(duì)比 

step01

用實(shí)例來講:

def testArgparse():
	parser = argparse.ArgumentParser(description = 'Argparse Demo.')
	parser.add_argument('-n', '--name', default = 'Lee')
	parser.add_argument('-m', '--money', default = '80W')
	args = parser.parse_args()
	print(' This content is ', args)
	name = args.name
	money = args.money
	print(' Shuai ge is {}, ta yi nian {}!'.format(name, money))
if __name__ == '__main__':
	testArgparse()

輸出的結(jié)果為:

step 02 

 接下來我們引入 store。

def testArgparse():
	parser = argparse.ArgumentParser(description = 'Argparse Demo.')
	parser.add_argument('-n', '--name', default = 'Lee')
	parser.add_argument('-m', '--money', action='store_const', const = '80W')
	args = parser.parse_args()
	print(' This content is ', args)
	name = args.name
	money = args.money
	print(' Shuai ge is {}, ta yi nian {}!'.format(name, money))
if __name__ == '__main__':
	testArgparse()

注意,我在這里增加了

action='store_const', const = '80W'

替換了原來的

default = '80w'

程序可以運(yùn)行,但是我們可以看到,值出現(xiàn)了變化

money這里變成了none。

一步一步來。

step03:store后面是否可以自定義?

 代碼變紅了,我還以為可以。實(shí)際上不行。

step04:為什么我的輸出值為None?

修改了賦值語句之后,可以取到值。

但是對(duì)比可以得到, 取值時(shí)候需要加入索引。

parser.parse_args(['-m'])

step05 理解store_true,store_false

這個(gè)時(shí)候我們?cè)倩仡^來看,就很清晰了,就是給參數(shù)賦值為true和false。

準(zhǔn)確描述為:“當(dāng)帶有store_true時(shí),你傳入對(duì)應(yīng)參數(shù),則觸發(fā)為真,否則為假。”

>>> parser = argparse.ArgumentParser()
>>> parser.add_argument('--foo', action='store_true')
>>> parser.add_argument('--bar', action='store_false')
>>> parser.add_argument('--baz', action='store_false')
>>> parser.parse_args('--foo --bar'.split())
Namespace(foo=True, bar=False, baz=True)

那在我們具體應(yīng)用中呢?

看實(shí)例

def testArgparse():
	parser = argparse.ArgumentParser(description = 'Argparse Demo.')
	parser.add_argument('-t', '--tag', action='store_true', help='是否能夠運(yùn)行')
	parser.add_argument('-n', '--name', default = 'Lee')
	parser.add_argument('-m', '--money', action='store_const', const = '80W')
	args = parser.parse_args()
	print(' This content is ', args)
	name = args.name
	#money = args.money
	money = parser.parse_args(['-m'])
	tag= args.tag
	print(tag,int(tag))
	print(' Shuai ge is {}, ta yi nian {}!'.format(name, money))
if __name__ == '__main__':
	testArgparse()

當(dāng)我們調(diào)用為true的時(shí)候,

這些就非常明確了。 

到此這篇關(guān)于python中argparse模塊,action=‘store_true‘的文章就介紹到這了,更多相關(guān)python中argparse模塊內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python入門教程(十九)python的函數(shù)詳解

    Python入門教程(十九)python的函數(shù)詳解

    這篇文章主要介紹了Python入門教程(十九)python的函數(shù),函數(shù)是組織好的,可重復(fù)使用的,用來實(shí)現(xiàn)單一,或相關(guān)聯(lián)功能的代碼段,需要的朋友可以參考下
    2023-04-04
  • 使用國內(nèi)鏡像源優(yōu)化pip install下載的方法步驟

    使用國內(nèi)鏡像源優(yōu)化pip install下載的方法步驟

    在Python開發(fā)中,pip 是一個(gè)不可或缺的工具,用于安裝和管理Python包,然而,由于默認(rèn)的PyPI服務(wù)器位于國外,國內(nèi)用戶在安裝依賴時(shí)可能會(huì)遇到下載速度慢、連接不穩(wěn)定等問題,所以本文將詳細(xì)介紹如何使用國內(nèi)鏡像源來加速pip install -r requirements.txt的過程
    2025-03-03
  • Python設(shè)計(jì)模式行為型觀察者模式

    Python設(shè)計(jì)模式行為型觀察者模式

    這篇文章主要介紹了Python設(shè)計(jì)模式行為型觀察者模式,觀察者模式即Publish?Subscribe?Pattern,定義了一種一對(duì)多的關(guān)系,讓多個(gè)觀察對(duì)象同時(shí)監(jiān)聽一個(gè)主題對(duì)象,當(dāng)主題對(duì)象狀態(tài)發(fā)生變化時(shí)會(huì)通知所有觀察者,是它們能夠自動(dòng)更新自己,下面和小編一起進(jìn)入文章學(xué)習(xí)詳細(xì)內(nèi)容吧
    2022-02-02
  • selenium WebDriverWait類等待機(jī)制的實(shí)現(xiàn)

    selenium WebDriverWait類等待機(jī)制的實(shí)現(xiàn)

    這篇文章主要介紹了selenium WebDriverWait類等待機(jī)制的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-03-03
  • python安裝讀取grib庫總結(jié)(推薦)

    python安裝讀取grib庫總結(jié)(推薦)

    這篇文章主要介紹了python安裝讀取grib庫總結(jié),本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-06-06
  • 關(guān)于PyCharm安裝后修改路徑名稱使其可重新打開的問題

    關(guān)于PyCharm安裝后修改路徑名稱使其可重新打開的問題

    這篇文章主要介紹了關(guān)于PyCharm安裝后修改路徑名稱使其可重新打開的問題,本文通過圖文實(shí)例相結(jié)合給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-10-10
  • Python爬蟲獲取基金凈值信息詳情

    Python爬蟲獲取基金凈值信息詳情

    這篇文章主要介紹了Python爬蟲獲取基金凈值信息詳情,文章基于錢兩篇文章的內(nèi)容圍繞python的相關(guān)資料展開詳細(xì)介紹,需要的小伙伴可以參考一下
    2022-05-05
  • Python函數(shù)裝飾器原理與用法詳解

    Python函數(shù)裝飾器原理與用法詳解

    這篇文章主要介紹了Python函數(shù)裝飾器原理與用法,結(jié)合實(shí)例形式詳細(xì)分析了Python裝飾器的原理、功能、分類、常見操作技巧與使用注意事項(xiàng),需要的朋友可以參考下
    2019-08-08
  • Tensorflow tensor 數(shù)學(xué)運(yùn)算和邏輯運(yùn)算方式

    Tensorflow tensor 數(shù)學(xué)運(yùn)算和邏輯運(yùn)算方式

    這篇文章主要介紹了Tensorflow tensor 數(shù)學(xué)運(yùn)算和邏輯運(yùn)算方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-06-06
  • python模塊shutil函數(shù)應(yīng)用示例詳解教程

    python模塊shutil函數(shù)應(yīng)用示例詳解教程

    這篇文章主要為大家介紹了python模塊中shutil函數(shù)的應(yīng)用示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2021-10-10

最新評(píng)論

道孚县| 驻马店市| 乐至县| 莱芜市| 大石桥市| 长宁县| 玛纳斯县| 乌恰县| 林甸县| 定陶县| 台南县| 龙游县| 合肥市| 监利县| 平乐县| 邻水| 富宁县| 桂平市| 保康县| 寻乌县| 上栗县| 宝坻区| 垣曲县| 丰宁| 民勤县| 安阳县| 岢岚县| 惠水县| 罗源县| 湾仔区| 怀集县| 察雅县| 始兴县| 泰兴市| 石泉县| 建瓯市| 顺义区| 郁南县| 兰坪| 长寿区| 密云县|