python命令行參數(shù)argparse模塊基本用法詳解
argparse 是python自帶的命令行參數(shù)解析包,可以用來方便地讀取命令行參數(shù)。
一、傳入一個參數(shù)
import argparse
# 創(chuàng)建一個命令行參數(shù)解析器
parser = argparse.ArgumentParser(description='命令行中傳入一個數(shù)字')
# 往解析器里面添加參數(shù)
parser.add_argument('integer', type=str, help='傳入的數(shù)字')
# 得到命令行傳入的參數(shù)
args = parser.parse_args()
print(args.integer)二、傳入多個參數(shù)
import argparse
# 創(chuàng)建一個命令行參數(shù)解析器
parser = argparse.ArgumentParser(description='命令行中傳入一個數(shù)字')
# 往解析器里面添加參數(shù)
parser.add_argument('integer', type=str, nargs='+', help='傳入的數(shù)字')
# 得到命令行傳入的參數(shù)
args = parser.parse_args()
print(args.integer) # 以列表形式返回
注:
- nargs='+': 傳入一個或多個參數(shù)
- nargs='*': 傳入零個或多個參數(shù)
- nargs='?': 傳入零個或一個參數(shù)三、改變數(shù)據(jù)類型
# 可通過更改type參數(shù)修改數(shù)據(jù)類型
parser.add_argument('integer', type=str, nargs='+', help='傳入的數(shù)字')四、可選參數(shù)(關(guān)鍵字參數(shù))
注:參數(shù)前面加雙橫杠"- -"表示這個參數(shù)是可選參數(shù),即在命令行中可以以鍵值得形式指定,順序可以打亂。
import argparse
parser = argparse.ArgumentParser(description='姓名')
parser.add_argument('--family', type=str, help='姓')
parser.add_argument('--name', type=str, help='名')
args = parser.parse_args()
#打印姓名
print(args.family+args.name)
命令行命令:
python XXX.py --family 張 --name 三 or
python XXX.py --name 三 --family 張五、參數(shù)默認值
通過default指定默認值。
parser.add_argument('--family', default='李', type=str, help='姓')
parser.add_argument('--name', type=str, help='名')六、參數(shù)解析
parse_args()只能解析已知參數(shù),parse_known_args()兼容未知參數(shù)并返回。
import argparse
parser = argparse.ArgumentParser(description='姓名')
parser.add_argument('--family', type=str,help='姓')
parser.add_argument('--name', type=str,help='名')
args = parser.parse_args()
# args, dynamic_args = parser.parse_known_args()
print(args)
print(dynamic_args)
命令行示例:
python XXX.py --family 張 --name 三 --test hello
結(jié)果:
args = parser.parse_args() # 報錯, error: unrecognized arguments: --test 5
args, dynamic_args = parser.parse_known_args() # 成功返回
補充:python中的argparse基本用法
1、argparse是一個python模塊,用途是:命令行選項、參數(shù)和子命令的解釋。
2、使用步驟:
- 導入argparse模塊,并創(chuàng)建解釋器
- 添加所需參數(shù)
- 解析參數(shù)
3、用法示例:
import argparse
# 1.創(chuàng)建解釋器
parser = argparse.ArgumentParser(description="可寫可不寫,只是在命令行參數(shù)出現(xiàn)錯誤的時候,隨著錯誤信息打印出來。")
# 2.添加需要的參數(shù)
parser.add_argument('-gf', '--girlfriend', choices=['jingjing', 'lihuan'])
# 參數(shù)解釋
# -gf 代表短選項,在命令行輸入-gf和--girlfriend的效果是一樣的,作用是簡化參數(shù)輸入
#--girlfriend 代表完整的參數(shù)名稱,可以盡量做到讓人見名知意,需要注意的是如果想通過解析后的參數(shù)取出該值,必須使用帶--的名稱
# choices 代表輸入?yún)?shù)的只能是這個choices里面的內(nèi)容,其他內(nèi)容則會保錯
parser.add_argument('--house', type=int, default=0)
# 參數(shù)解釋
# --house 代表參數(shù)名稱
# type 代表輸入的參數(shù)類型,從命令行輸入的參數(shù),默認是字符串類型
# default 代表如果該參數(shù)不輸入,則會默認使用該值
parser.add_argument('food')
# 參數(shù)解釋
# 該種方式則要求必須輸入該參數(shù)
# 輸入該參數(shù)不需要指定參數(shù)名稱,指定反而報錯,解釋器會自動將輸入的參數(shù)賦值給food
# 3.進行參數(shù)解析
args = parser.parse_args()
print('------args---------',args)
print('-------gf-------', args.girlfriend)4、命令行運行方式
假設上述文件的名字是gf.py
在命令行運行時,則有以下幾種情況:
- python gf.py potato ,這種方式會將potato賦值給food
- python gf.py -gf jingjing tomato,該種方式會將jingjing賦值給girlfriend,tomato賦值給food
- python gf.py --house 2 chicken,該種方式會將house賦值為2,food賦值為chicken
下面為以上三種情況的具體運行時截圖:
a.

b.

c.

學會了以上的幾種方式,argparse模塊的基本用法也就掌握了。
到此這篇關(guān)于python命令行參數(shù)-argparse模塊基本用法的文章就介紹到這了,更多相關(guān)python命令行參數(shù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- Python命令行參數(shù)解析包argparse的使用詳解
- Python中最好用的命令行參數(shù)解析工具(argparse)
- Python命令行參數(shù)解析之a(chǎn)rgparse模塊詳解
- Python如何使用argparse模塊處理命令行參數(shù)
- python argparse命令行參數(shù)解析(推薦)
- python 如何利用argparse解析命令行參數(shù)
- Python argparse模塊實現(xiàn)解析命令行參數(shù)方法詳解
- 詳解Python中命令行參數(shù)argparse的常用命令
- Python詳解argparse參數(shù)模塊之命令行參數(shù)
- 從零開始用Python解析命令行參數(shù)之標準庫argparse和第三方庫click
相關(guān)文章
Python實現(xiàn)操縱控制windows注冊表的方法分析
這篇文章主要介紹了Python實現(xiàn)操縱控制windows注冊表的方法,結(jié)合實例形式分析了Python使用_winreg模塊以及win32api模塊針對Windows注冊表操作相關(guān)實現(xiàn)技巧,需要的朋友可以參考下2019-05-05
使用Python找出多個Excel文件中缺失數(shù)據(jù)行數(shù)多的文件
這篇文章主要為大家詳細介紹了如何使用Python找出多個Excel文件中缺失數(shù)據(jù)行數(shù)多的文件,文中的示例代碼講解詳細,需要的小伙伴可以參考一下2025-01-01
在python中實現(xiàn)調(diào)用可執(zhí)行文件.exe的3種方法
今天小編就為大家分享一篇在python中實現(xiàn)調(diào)用可執(zhí)行文件.exe的3種方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-07-07

