1. 程式人生 > >python命令列解析模組-argparse

python命令列解析模組-argparse

主要參考blog:

argparse模組是Python的命令列解析模組,可以很方便的進行引數的傳遞,而不需要修改原始碼。

argparse的使用主要有三步,建立解析物件,新增命令列引數,進行引數的解析

看程式碼和註釋:

import argparse 

#建立一個解析物件,當執行help時description會顯示
parser = argparse.ArgumentParser(description='Process some integers.') 

#新增命令列引數,有兩種,該種是位置引數,以引數的位置為準,比如第一個出現的引數就是複製給integers的
parser.add_argument('integers', metavar='N', type=int, nargs='+',help='an integer for the accumulator') 

#第二種:可選引數,該引數呼叫時必須給出名字,然後後邊跟著值,和位置引數不一樣,其中'-s','--sum'是
#一樣的,都是指的同一個引數,一個是短的,一個是長的,只不過同時出現的話引數預設儲存在--sum兩個槓的
#引數中
#其中後邊跟著很多引數,更深入的用法需要知道各個引數的意義
parser.add_argument('-s','--sum', dest='accumulate', action='store_const',const=sum, default=max, help='sum the integers (default: find the max)') 

#進行命令列的解析
args = parser.parse_args() 

#呼叫檢視傳入引數的值,就和呼叫類的方法一樣args.integers或args.sum
print(args.accumulate(args.integers))

#常見的呼叫方式有:
#python prog.py -h
#python prog.py 1 2 3 4 --sum
#python convert.py yolov3.cfg yolov3.weights model_data/yolo.h5
#..........


相關推薦

python命令解析模組-argparse

主要參考blog: argparse模組是Python的命令列解析模組,可以很方便的進行引數的傳遞,而不需要修改原始碼。 argparse的使用主要有三步,建立解析物件,新增命令列引數,進行引數的解析 看程式碼和註釋: import argparse

python命令解析模組--argparse

  python命令列解析模組--argparse 目錄 簡介 詳解ArgumentParser方法 詳解add_argument方法   參考文件:  https://www.jianshu.com/p/aac9f8079a53 https://www

Python命令解析argparse的使用

argparse是Python內建的一個用於命令項選項與引數解析的模組,在編寫指令碼的過程中是非常常用的。 在其使用中主要包含三個步驟: import argparse parser = argparse.ArgumentParser(descripti

Python 命令解析工具 Argparse介紹(二)

今天學習python的argparse模組。看到了這樣一篇文章,連結 http://www.cnblogs.com/jianboqi/archive/2013/01/10/2854726.html,題目是Python 命令列解析工具 Argparse介紹(一),翻譯自pyt

python 命令解析工具 argparse 基本使用

parser = argparse.ArgumentParser() #建立物件 parser.add_argument("file") #新增引數 parser.add_

深入理解python 命令解析模組optparse(optparse原始碼解讀)

optparse是python用來解析命令列引數的,最早是getopt,option比getopt更強大和靈活。最新的命令列解析使用argparse,因此optparse今後將不會再被開發,optparse在python的原始碼位置是Lib/optparse

python命令解析argparse模組

主要是比較理解兩個函式:parse_args()和parse_known_args() ① parse_args() import argparse import sys parse = arg

常用的python命令解析

常用的python命令列解析庫,這兒介紹3種: 1.argparse 2.click 3.fire   argparse是python自帶的模組,要經歷解析器初始化、引數定義、解析一套流程,使用起來有些繁瑣。 一篇argparse使用的文章:https://ww

Python命令引數解析模組argparse

當寫一個Python指令碼時經常會遇到不同引數不同功能的情況,如何做一個更好看的命令幫助資訊以及對命令引數解析呢? 這就需要使用argparse模組 #!/usr/bin/env python # -*- coding: utf-8 -*- import sys import os impor

Python解析命令讀取引數 -- argparse模組

在多個檔案或者不同語言協同的專案中,python指令碼經常需要從命令列直接讀取引數。萬能的python就自帶了argprase包使得這一工作變得簡單而規範。PS:optparse包是類似的功能,只不過寫起來更麻煩一些。 如果指令碼很簡單或臨時使用,沒有多個複雜的引數選項

Python程式設計:使用sys、argparse、click、fire實現命令解析

python實現指令碼命令列的庫有: 內建庫sys 內建庫argparse 第三方庫click 第三方庫fire 內建庫sys sys.argv 包含命令列引數列表,第一個引數是檔名 sys_demo.py import sys d

python 命令引數解析 argparse簡單分析

在python 2.7 後,不推薦使用 optparse, 而推薦使用 argparse. 其它的不多說,簡單的分析下我遇到的問題:我是想用 argparse 來解析不定長的命令列引數 例如: import argparse import sys parser = ar

python命令解析argparse

# -*- coding: utf-8 -*- import argparse args = "-f hello.txt -n 1 2 3 -x 100 -y b -z a -q hello @args.txt i_am_bar -h".split() # 使用

python 命令引數——argparse模組的使用

以下內容主要來自:http://wiki.jikexueyuan.com/project/explore-python/Standard-Modules/argparse.html argparse 使用 簡單示例 我們先來看一個簡單示例。主要有三個步驟: 建立 ArgumentParser(

argparse--python 命令解釋

python命令列直譯器包argparse 為什麼要用argparse 如何使用argparse To be continue 為什麼要用argparse 因為最近一直用python,python很好,有很多的開源工具包。然而pytho

python常用的命令解析

1、argparse argparse是python自帶的模組,要經歷解析器初始化、引數定義、解析一套流程,使用起來有些繁瑣。 argpase的使用: class Calculator(object): """ 計算器 """

python命令引數解析

一、getopt模組  getopt.getopt(args, options[, long_options]) args為需要解析的命令列引數列表,一般為sys.argv[1:],這是因為argv[0]為指令碼的路徑。 options為希望識別的引數,如果該命令列引數

argparse命令解析

衝突的選項 以相同的引數名字為一個解析器新增兩個引數處理器會引發一個異常。可以通過傳遞一個conflict_handler來改變衝突消除行為。argparse有兩個內建的衝突處理器error(預設)和resolve,resolve會基於衝突選項的新增順序來選擇

Python中的命令解析工具介紹

轉自新浪微博:@孔令賢HW; ++++++++++++++++++++++ sys.argv 最簡單、最原始的方法就是手動解析了。 import sysdefTestSys():for arg in sys.argv[1:]:print(arg) getopt

Python命令選項引數解析策略

概述 在Python的專案開發過程中,我們有時需要為程式提供一些可以通過命令列進行呼叫的介面。不過,並不是直接使用 command + 當前檔案 就ok的,我們需要對其設定可選的各種各樣的操作型別。所以,這種情況下我們就有必要對傳入的引數進行解析操作。下面就此