Python argparse模組基本用法

2022-09-15 15:27:15 字數 1128 閱讀 2616

argparse 是python自帶的命令列引數解析包,可以用來方便地讀取命令列引數。

import argparse

def main():

parser = argparse.argumentparser(description='test argparse')

parser.add_argument('-n', '--name', default='wzy')

parser.add_argument('-a', '--age', default='30')

args = parser.parse_args()

print(args)

name = args.name

age = args.age

print('我是%s,我的年齡是%s' %(name,age))

if __name__ == '__main__':

main()

執行的結果是:

namespace(age='30', name='wzy')

我是wzy,我的年齡是30

在上面的**中,我們先導入了argparse這個包,然後包中的argumentparser類生成乙個parser物件(好多部落格中把這個叫做引數解析器),其中的description描述這個引數解析器是幹什麼的,當我們在命令列顯示幫助資訊的時候會看到description描述的資訊。接著我們通過物件的add_argument函式來增加引數。這裡我們增加了兩個引數name和age,其中'-n','--name'表示同乙個引數,default引數表示我們在執行命令時若沒有提供引數,程式會將此值當做引數值。最後採用物件的parse_args獲取解析的引數,由執行結果可以看到,namespace中有兩個屬性(也叫成員)這裡要注意個問題,當'-'和'--'同時出現的時候,系統預設後者為引數名,前者不是,但是在命令列輸入的時候沒有這個區分接下來就是列印引數資訊了。

當執行命令python fun_test.py -n wang --age '26'結果如下

namespace(age='26', name='wang')

我是wang,我的年齡是26

可以通過python fun_test.py -h獲得幫助。

python argparse舉例說明

目的 想從命令列通過命令來指定是否執行程式中的某個函式 模組 更新關於另乙個例子 這裡只舉例說明 原因是看了很多博文之後,還是沒有解決筆者上面說的那個問題,即如何從命令列決定是否執行某段函式問題 設定乙個引數,名為foreground,簡寫f 即在終端可以輸入 foreground也可以輸入 f。跟...

Python argparse模組的使用

最近在看github上的mmskeleton專案時,遇到了python中的argparse模組。於是查閱了一下資料 根據官方給出的argparsetutorial,該模組的作用在於對命令列進行解析。英文比較好的朋友,建議直接看tutorial,其中的解釋還是很清楚的。看英文比較頭疼的朋友,也可以參考...

python argparse轉換為字典

在使用argparse定義程式引數時,常規用法如下 import argparse parser argparse.argumentparser parser.add argument epochs type int default 5000 help train epochs.parser.add...