Python中命令行參數(shù)argparse模塊的使用
argparse 模塊是Python內(nèi)置的用于命令項選項與參數(shù)解析的模塊,可以輕松編寫友好的命令行接口,能夠幫助程序員為模型定義參數(shù)。
傳入一個參數(shù)
add_argument()中的type參數(shù)表示傳入?yún)?shù)的數(shù)據(jù)類型
import argparse
#定義命令行解析器對象
parser = argparse.ArgumentParser(description='參數(shù)說明')
#添加命令行參數(shù)
parser.add_argument('name',type=str,help='用戶名')
#從命令行中結構化解析參數(shù)
args = parser.parse_args()
print(args.url)
python test.py 張三
結果:
張三
位置參數(shù)
按先后順序傳入?yún)?shù)
import argparse
parser = argparse.ArgumentParser(description='參數(shù)說明')
parser.add_argument('param1', type=str, help='參數(shù)1')
parser.add_argument('param2', type=str, help='參數(shù)2')
args = parser.parse_args()
print(args.param1,args.param2)
python test.py a1 a2
結果:
a1 a2
可選參數(shù)
可選參數(shù)類似于關鍵詞傳參,但需要在關鍵詞前加–
import argparse
parser = argparse.ArgumentParser(description='參數(shù)說明')
parser.add_argument('--param1', type=str, help='參數(shù)1')
parser.add_argument('--param2', type=str, help='參數(shù)2')
args = parser.parse_args()
print(args.param1,args.param2)
python test.py --param1=a1
結果:
a1 None
名字可以寫很多個,一般寫兩個,一個短參數(shù),一個長參數(shù)
import argparse
parser = argparse.ArgumentParser(description='參數(shù)說明')
parser.add_argument('-f','--file', type=str, help='參數(shù)1')
args = parser.parse_args()
print(args.file)
python test.py -f=log.txt
結果:
log.txt
默認參數(shù)
add_argument()中的default參數(shù)可以為對某個參數(shù)設置默認值,當命令行沒有傳入該參數(shù)的值的時候,參數(shù)會設為默認值
import argparse
parser = argparse.ArgumentParser(description='參數(shù)說明')
parser.add_argument('--param1', type=str, default='hello', help='參數(shù)1')
parser.add_argument('--param2', type=str, default='hello1', help='參數(shù)2')
args = parser.parse_args()
print(args.param1,args.param2)
python test.py --param1=a1
結果:
a1 hello1
必需參數(shù)
add_argument中的required參數(shù)可以設置某個參數(shù)是否為必需
import argparse
parser = argparse.ArgumentParser(description='參數(shù)說明')
parser.add_argument('--param1', type=str, required=True, default='', help='參數(shù)1')
parser.add_argument('--param2', type=str, default='hello1', help='參數(shù)2')
args = parser.parse_args()
print(args.param1,args.param2)
常用參數(shù)解釋:
- default: 代表如果該參數(shù)不輸入,則會默認使用該值。
- type: 表示傳入?yún)?shù)的數(shù)據(jù)類型,例如:
str,int。 - required: 如果required=True則為必須項。
- help: 參數(shù)的幫助信息。
到此這篇關于Python中命令行參數(shù)argparse模塊的使用的文章就介紹到這了,更多相關Python argparse模塊內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Python實現(xiàn)數(shù)據(jù)可視化看如何監(jiān)控你的爬蟲狀態(tài)【推薦】
今天主要是來說一下怎么可視化來監(jiān)控你的爬蟲的狀態(tài)。文中通過實例代碼給大家分析了Python實現(xiàn)數(shù)據(jù)可視化看如何監(jiān)控你的爬蟲狀態(tài),感興趣的朋友一起看看吧2018-08-08
4種Python基于字段的不使用元類的ORM實現(xiàn)方法總結
在 Python 中,ORM(Object-Relational Mapping)是一種將對象和數(shù)據(jù)庫之間的映射關系進行轉換的技術,本文為大家整理了4種不使用元類的簡單ORM實現(xiàn)方式,需要的可以參考下2023-12-12
Python文件讀取read()?readline()?readlines()函數(shù)使用場景技巧示例
這篇文章主要介紹了Python文件讀取read() readline()及readlines()函數(shù)使用場景技巧示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-08-08
django+tornado實現(xiàn)實時查看遠程日志的方法
今天小編就為大家分享一篇django+tornado實現(xiàn)實時查看遠程日志的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-08-08
Python內(nèi)置函數(shù)Type()函數(shù)一個有趣的用法
這篇文章主要介紹了Python內(nèi)置函數(shù)Type()函數(shù)一個有趣的用法,本文講解的是個人發(fā)現(xiàn)在的一個有趣的用法,注意這種寫法會導致代碼很難讀,需要的朋友可以參考下2015-02-02

