欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python命令行參數(shù)argparse模塊基本用法詳解

 更新時(shí)間:2023年01月30日 08:48:26   作者:啊哈彭  
argparse?是python自帶的命令行參數(shù)解析包,可以用來(lái)方便地讀取命令行參數(shù),這篇文章主要介紹了python命令行參數(shù)-argparse模塊基本用法,需要的朋友可以參考下

argparse 是python自帶的命令行參數(shù)解析包,可以用來(lái)方便地讀取命令行參數(shù)。

一、傳入一個(gè)參數(shù)

import argparse

# 創(chuàng)建一個(gè)命令行參數(shù)解析器 
parser = argparse.ArgumentParser(description='命令行中傳入一個(gè)數(shù)字')
# 往解析器里面添加參數(shù)
parser.add_argument('integer', type=str, help='傳入的數(shù)字')
# 得到命令行傳入的參數(shù)
args = parser.parse_args()
print(args.integer)

二、傳入多個(gè)參數(shù)

import argparse

# 創(chuàng)建一個(gè)命令行參數(shù)解析器 
parser = argparse.ArgumentParser(description='命令行中傳入一個(gè)數(shù)字')
# 往解析器里面添加參數(shù)
parser.add_argument('integer', type=str, nargs='+', help='傳入的數(shù)字')
# 得到命令行傳入的參數(shù)
args = parser.parse_args()
print(args.integer)  # 以列表形式返回
注:
- nargs='+': 傳入一個(gè)或多個(gè)參數(shù)
- nargs='*': 傳入零個(gè)或多個(gè)參數(shù)
- nargs='?': 傳入零個(gè)或一個(gè)參數(shù)

三、改變數(shù)據(jù)類型

# 可通過(guò)更改type參數(shù)修改數(shù)據(jù)類型
parser.add_argument('integer', type=str, nargs='+', help='傳入的數(shù)字')

四、可選參數(shù)(關(guān)鍵字參數(shù))

注:參數(shù)前面加雙橫杠"- -"表示這個(gè)參數(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ù)默認(rèn)值

通過(guò)default指定默認(rèn)值。

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() # 報(bào)錯(cuò), error: unrecognized arguments: --test 5
args, dynamic_args = parser.parse_known_args() # 成功返回

在這里插入圖片描述

補(bǔ)充:python中的argparse基本用法

1、argparse是一個(gè)python模塊,用途是:命令行選項(xiàng)、參數(shù)和子命令的解釋。

2、使用步驟:

  • 導(dǎo)入argparse模塊,并創(chuàng)建解釋器
  • 添加所需參數(shù)
  • 解析參數(shù)

3、用法示例:

import argparse

# 1.創(chuàng)建解釋器
parser = argparse.ArgumentParser(description="可寫可不寫,只是在命令行參數(shù)出現(xiàn)錯(cuò)誤的時(shí)候,隨著錯(cuò)誤信息打印出來(lái)。")
# 2.添加需要的參數(shù)
parser.add_argument('-gf', '--girlfriend', choices=['jingjing', 'lihuan'])
# 參數(shù)解釋
# -gf 代表短選項(xiàng),在命令行輸入-gf和--girlfriend的效果是一樣的,作用是簡(jiǎn)化參數(shù)輸入
#--girlfriend 代表完整的參數(shù)名稱,可以盡量做到讓人見(jiàn)名知意,需要注意的是如果想通過(guò)解析后的參數(shù)取出該值,必須使用帶--的名稱
# choices 代表輸入?yún)?shù)的只能是這個(gè)choices里面的內(nèi)容,其他內(nèi)容則會(huì)保錯(cuò)
parser.add_argument('--house', type=int, default=0)
# 參數(shù)解釋
# --house 代表參數(shù)名稱
# type  代表輸入的參數(shù)類型,從命令行輸入的參數(shù),默認(rèn)是字符串類型
# default 代表如果該參數(shù)不輸入,則會(huì)默認(rèn)使用該值
parser.add_argument('food')
# 參數(shù)解釋
# 該種方式則要求必須輸入該參數(shù)
# 輸入該參數(shù)不需要指定參數(shù)名稱,指定反而報(bào)錯(cuò),解釋器會(huì)自動(dòng)將輸入的參數(shù)賦值給food

# 3.進(jìn)行參數(shù)解析
args = parser.parse_args() 
print('------args---------',args)
print('-------gf-------', args.girlfriend)

4、命令行運(yùn)行方式
假設(shè)上述文件的名字是gf.py
在命令行運(yùn)行時(shí),則有以下幾種情況:

  • python gf.py potato ,這種方式會(huì)將potato賦值給food
  • python gf.py -gf jingjing tomato,該種方式會(huì)將jingjing賦值給girlfriend,tomato賦值給food
  • python gf.py --house 2 chicken,該種方式會(huì)將house賦值為2,food賦值為chicken

下面為以上三種情況的具體運(yùn)行時(shí)截圖:
a.

在這里插入圖片描述

b.

在這里插入圖片描述

c.

在這里插入圖片描述

學(xué)會(huì)了以上的幾種方式,argparse模塊的基本用法也就掌握了。

到此這篇關(guān)于python命令行參數(shù)-argparse模塊基本用法的文章就介紹到這了,更多相關(guān)python命令行參數(shù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python3.6環(huán)境安裝+pip環(huán)境配置教程圖文詳解

    python3.6環(huán)境安裝+pip環(huán)境配置教程圖文詳解

    這篇文章主要介紹了python3.6環(huán)境安裝+pip環(huán)境配置教程圖文詳解,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-06-06
  • Python+微信接口實(shí)現(xiàn)運(yùn)維報(bào)警

    Python+微信接口實(shí)現(xiàn)運(yùn)維報(bào)警

    這篇文章主要介紹了Python+微信接口實(shí)現(xiàn)運(yùn)維報(bào)警的相關(guān)資料,需要的朋友可以參考下
    2016-08-08
  • 一篇文章帶你詳細(xì)了解python中一些好用的庫(kù)

    一篇文章帶你詳細(xì)了解python中一些好用的庫(kù)

    這篇文章主要推薦了一些好用的Python庫(kù),都有這不錯(cuò)的群眾基礎(chǔ),非常好用,也都很實(shí)用,推薦給大家,希望能夠給你帶來(lái)幫助
    2021-09-09
  • 分享unittest單元測(cè)試框架中幾種常用的用例加載方法

    分享unittest單元測(cè)試框架中幾種常用的用例加載方法

    這篇文章主要介紹了unittest單元測(cè)試框架中常用的幾種用例加載方法,幫助大家更好的理解和使用python的unittest測(cè)試模塊,感興趣的朋友可以了解下
    2020-12-12
  • python學(xué)習(xí)之第三方包安裝方法(兩種方法)

    python學(xué)習(xí)之第三方包安裝方法(兩種方法)

    這篇文章主要介紹了python學(xué)習(xí)之第三方包安裝方法,最近在學(xué)習(xí)QQ空間、微博(爬蟲)模擬登錄,都涉及到了RSA算法。這樣需要下一個(gè)RSA包(第三方包),在網(wǎng)上搜了好多資料,在此做了總結(jié),需要的朋友可以參考下
    2015-07-07
  • python 使用elasticsearch 實(shí)現(xiàn)翻頁(yè)的三種方式

    python 使用elasticsearch 實(shí)現(xiàn)翻頁(yè)的三種方式

    這篇文章主要介紹了python 使用elasticsearch 實(shí)現(xiàn)翻頁(yè)的三種方式,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07
  • Python 實(shí)戰(zhàn)開發(fā)校園管理系統(tǒng)詳細(xì)流程

    Python 實(shí)戰(zhàn)開發(fā)校園管理系統(tǒng)詳細(xì)流程

    讀萬(wàn)卷書不如行萬(wàn)里路,只學(xué)書上的理論是遠(yuǎn)遠(yuǎn)不夠的,只有在實(shí)戰(zhàn)中才能獲得能力的提升,本篇文章手把手帶你用Python開發(fā)一套校園管理系統(tǒng),包含各種人員,如教師、學(xué)生等。學(xué)校的系統(tǒng)通常還包括一些課程的信息,大家可以在過(guò)程中查缺補(bǔ)漏,提升水平
    2021-10-10
  • python+gdal+遙感圖像拼接(mosaic)的實(shí)例

    python+gdal+遙感圖像拼接(mosaic)的實(shí)例

    這篇文章主要介紹了python+gdal+遙感圖像拼接(mosaic)的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-03-03
  • python web框架的總結(jié)

    python web框架的總結(jié)

    在本篇文章里小編給大家整理的是一篇關(guān)于python web框架的總結(jié)內(nèi)容,有興趣的朋友們可以學(xué)習(xí)參考下。
    2021-03-03
  • Python中的pandas庫(kù)簡(jiǎn)介及其使用教程

    Python中的pandas庫(kù)簡(jiǎn)介及其使用教程

    pandas是用于數(shù)據(jù)挖掘的Python庫(kù),Pandas中常見(jiàn)的數(shù)據(jù)結(jié)構(gòu)有Series和DateFrame兩種方式,今天通過(guò)本文給大家講解Python中的pandas庫(kù)簡(jiǎn)介及其使用,感興趣你跟隨小編一起學(xué)習(xí)吧
    2022-11-11

最新評(píng)論