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

Python?內(nèi)置模塊?argparse快速入門教程

 更新時(shí)間:2023年06月25日 15:24:57   作者:Amo?Xiang  
argparse模塊是Python內(nèi)置的用于命令項(xiàng)選項(xiàng)與參數(shù)解析的模塊,argparse模塊可以讓人輕松編寫用戶友好的命令行接口,能夠幫助程序員為模型定義參數(shù),這篇文章主要介紹了快速入門Python內(nèi)置模塊argparse,需要的朋友可以參考下

一、argparse 簡(jiǎn)介

argparse 模塊是 Python 內(nèi)置的用于命令項(xiàng)選項(xiàng)與參數(shù)解析的模塊,argparse 模塊可以讓人輕松編寫用戶友好的命令行接口,能夠幫助程序員為模型定義參數(shù)。

使用 argparse 模塊的四個(gè)步驟:

導(dǎo)入 argparse 包

import argparse

創(chuàng)建一個(gè)命令行解析器對(duì)象

# 創(chuàng)建 ArgumentParser() 對(duì)象
parser_ = argparse.ArgumentParser(description="study argparse")

給解析器添加命令行參數(shù) ——調(diào)用 add_argument() 方法添加參數(shù)

parser_.add_argument('food')

解析命令行的參數(shù) ——使用 parse_args() 解析添加的參數(shù),并將結(jié)果用 print 語(yǔ)句輸出

args = parser_.parse_args()
print(args.food)
print(type(args.food))

代碼示例:

# -*- coding: utf-8 -*-
# @Time    : 2023-04-19 15:48
# @Author  : AmoXiang
# @File    : test.py
# @Software: PyCharm
# @Blog    : https://blog.csdn.net/xw1680
import argparse  # 1.導(dǎo)入argparse
# 2.創(chuàng)建一個(gè)命令行解析器對(duì)象
parser_ = argparse.ArgumentParser(description="study argparse")
# 3.給解析器添加命令行參數(shù)
parser_.add_argument('food')
# 4.解析命令行的參數(shù)并打印
args = parser_.parse_args()
print(args.food)
print(type(args.food))

運(yùn)行結(jié)果如下:

在這里插入圖片描述

對(duì)上面代碼進(jìn)行解讀:

首先我們導(dǎo)入 argparse 這個(gè)包,然后包中的 ArgumentParser 類生成一個(gè) parser 對(duì)象(其中的 description 對(duì)參數(shù)解析器的作用進(jìn)行描述),當(dāng)我們?cè)诿钚酗@示幫助信息的時(shí)候會(huì)看到 description 描述的信息。例如:python test.py -h

在這里插入圖片描述

接著我們通過(guò)對(duì)象的 add_argument 函數(shù)來(lái)增加參數(shù)。這里我們?cè)黾恿?food 參數(shù),最后采用對(duì)象的 parse_args 獲取解析的參數(shù)。打印結(jié)果如下圖所示:

在這里插入圖片描述

二、The add_argument() method

add_argument() 方法定義如何解析單個(gè)命令行參數(shù), 語(yǔ)法如下:

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

后續(xù)示例代碼會(huì)用到的參數(shù)解釋:

① name or flags - Either a name or a list of option strings, e.g. foo or -f, --foo. 必要參數(shù)
② choices - A container of the allowable values for the argument.
③ type - The type to which the command-line argument should be converted.
④ default - The value produced if the argument is absent from the command line.
⑤ help - A brief description of what the argument does.

name or flags 第一種寫法如下:

import argparse
parser_ = argparse.ArgumentParser(description="study argparse")
# 該種方式則要求必須輸入該參數(shù)
parser_.add_argument('food')
args = parser_.parse_args()
print(args.food)
print(type(args.food))

命令行運(yùn)行方式:

E:\download\AccountPool-master>python3 test.py 2
2
<class 'str'> 這種方式會(huì)將 2 賦值給food
E:\download\AccountPool-master>python3 test.py noodles
noodles
<class 'str'> 這種方式會(huì)將 noodles 賦值給food

name or flags 第二種寫法如下:

# 1.--house 代表參數(shù)名稱
# 2.type 代表輸入的參數(shù)類型,從命令行輸入的參數(shù),默認(rèn)是字符串類型
# 3.default 代表如果該參數(shù)不輸入,則會(huì)默認(rèn)使用該值
import argparse
parser_ = argparse.ArgumentParser(description="study argparse")
parser_.add_argument('--house', type=int, default=0)
args = parser_.parse_args()
print(args.house)
print(type(args.house))

命令行運(yùn)行方式:

E:\download\AccountPool-master>python3 test.py --house 1
1
<class 'int'>
E:\download\AccountPool-master>python3 test.py
0
<class 'int'>

name or flags 第三種寫法如下:

# -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ò)
import argparse
parser_ = argparse.ArgumentParser(description="study argparse")
parser_.add_argument('-gf', '--girlfriend', choices=['jingjing', 'lihuan'])
parser_.add_argument('food')
args = parser_.parse_args()
print(args.food)
print(type(args.food))
print(args.girlfriend)
print(type(args.girlfriend))

命令行運(yùn)行方式:

E:\download\AccountPool-master>python3 test.py --girlfriend jingjing
usage: test.py [-h] [-gf {jingjing,lihuan}] food
test.py: error: the following arguments are required: food
E:\download\AccountPool-master>python3 test.py --girlfriend jingjing amoxiang
amoxiang
<class 'str'>
jingjing
<class 'str'>
E:\download\AccountPool-master>python3 test.py -gf jingjing amoxiang
amoxiang
<class 'str'>
jingjing
<class 'str'>
E:\download\AccountPool-master>python3 test.py -gf amoxiang1 amoxiang2
usage: test.py [-h] [-gf {jingjing,lihuan}] food
test.py: error: argument -gf/--girlfriend: invalid choice: 'amoxiang1' (choose from 'jingjing', 'lihuan')

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

相關(guān)文章

  • Pandas如何對(duì)帶有Multi-column(多列名稱)的數(shù)據(jù)排序并寫入Excel中

    Pandas如何對(duì)帶有Multi-column(多列名稱)的數(shù)據(jù)排序并寫入Excel中

    這篇文章主要介紹了Pandas如何對(duì)帶有Multi-column(多列名稱)的數(shù)據(jù)排序并寫入Excel中問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-02-02
  • 使用Python實(shí)現(xiàn)SSH隧道界面功能

    使用Python實(shí)現(xiàn)SSH隧道界面功能

    這篇文章主要介紹了使用Python實(shí)現(xiàn)一個(gè)SSH隧道界面功能,界面使用tkinter實(shí)現(xiàn),左邊是輸入隧道的信息,右邊為歷史列表,本文通過(guò)示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2022-02-02
  • python學(xué)習(xí)手冊(cè)中的python多態(tài)示例代碼

    python學(xué)習(xí)手冊(cè)中的python多態(tài)示例代碼

    多態(tài)是面向?qū)ο笳Z(yǔ)言的一個(gè)基本特性,多態(tài)意味著變量并不知道引用的對(duì)象是什么,根據(jù)引用對(duì)象的不同表現(xiàn)不同的行為方式,下面使用一個(gè)示例學(xué)習(xí)他的使用方法
    2014-01-01
  • 通過(guò)實(shí)例解析Python RPC實(shí)現(xiàn)原理及方法

    通過(guò)實(shí)例解析Python RPC實(shí)現(xiàn)原理及方法

    這篇文章主要介紹了通過(guò)實(shí)例解析Python RPC實(shí)現(xiàn)原理及方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-07-07
  • 基于Python的Jenkins的二次開發(fā)操作

    基于Python的Jenkins的二次開發(fā)操作

    這篇文章主要介紹了基于Python的Jenkins的二次開發(fā)操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-05-05
  • Python批量將Word文檔(.doc)轉(zhuǎn)換為.docx格式的完整實(shí)現(xiàn)步驟

    Python批量將Word文檔(.doc)轉(zhuǎn)換為.docx格式的完整實(shí)現(xiàn)步驟

    這篇文章主要介紹了Python批量將Word文檔(.doc)轉(zhuǎn)換為.docx格式的完整實(shí)現(xiàn)步驟,文中通過(guò)代碼介紹的非常詳細(xì),適用于Windows系統(tǒng),解決了手動(dòng)轉(zhuǎn)換的低效率和出錯(cuò)率問(wèn)題,需要的朋友可以參考下
    2024-12-12
  • Python3實(shí)現(xiàn)的簡(jiǎn)單驗(yàn)證碼識(shí)別功能示例

    Python3實(shí)現(xiàn)的簡(jiǎn)單驗(yàn)證碼識(shí)別功能示例

    這篇文章主要介紹了Python3實(shí)現(xiàn)的簡(jiǎn)單驗(yàn)證碼識(shí)別功能,涉及Python針對(duì)驗(yàn)證碼圖片識(shí)別處理相關(guān)操作技巧,需要的朋友可以參考下
    2018-05-05
  • python openpyxl篩選某些列的操作

    python openpyxl篩選某些列的操作

    這篇文章主要介紹了python openpyxl篩選某些列的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-03-03
  • Python實(shí)現(xiàn)多任務(wù)版的udp聊天器

    Python實(shí)現(xiàn)多任務(wù)版的udp聊天器

    這篇文章主要為大家詳細(xì)介紹了Python實(shí)現(xiàn)多任務(wù)版的udp聊天器,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-07-07
  • Python中使用Matplotlib進(jìn)行多圖繪制的詳細(xì)教程

    Python中使用Matplotlib進(jìn)行多圖繪制的詳細(xì)教程

    Matplotlib是Python中強(qiáng)大的數(shù)據(jù)可視化工具,支持繪制多圖,這篇文章主要介紹了Python中使用Matplotlib進(jìn)行多圖繪制的相關(guān)資料,包括使用subplot、subplots和GridSpec進(jìn)行布局,并提供了調(diào)整圖表樣式和布局的方法,需要的朋友可以參考下
    2024-11-11

最新評(píng)論

周至县| 石城县| 栾川县| 庆安县| 平罗县| 南乐县| 宝鸡市| 日喀则市| 杭锦后旗| 沁阳市| 雅江县| 德惠市| 新乐市| 任丘市| 枣强县| 凯里市| 江门市| 广安市| 高要市| 金昌市| 普定县| 民权县| 开封县| 兴和县| 宜良县| 南京市| 光山县| 云安县| 景泰县| 莱西市| 汉中市| 中方县| 定兴县| 微博| 盐津县| 崇明县| 万州区| 桂东县| 织金县| 沧州市| 乌兰浩特市|