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

python getopt模塊使用實(shí)例解析

 更新時(shí)間:2019年12月18日 14:46:41   作者:我曾把春天丟了  
這篇文章主要介紹了python getopt模塊使用實(shí)例解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

這篇文章主要介紹了python getopt模塊使用實(shí)例解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

官方介紹地址: https://docs.python.org/3.1/library/getopt.html

實(shí)用方向:

  處理命令行參數(shù)的一個(gè)方法,簡(jiǎn)單好用。

方法:

  getopt模塊總共有2個(gè)函數(shù),分別為:

  • getopt.getopt
  • getopt.gnu_getopt

簡(jiǎn)單使用:

getopt這個(gè)函數(shù)常用,簡(jiǎn)單看一下這個(gè)函數(shù)的使用:

getopt.getopt(args, shortopts, longopts=[])

看這幾個(gè)參數(shù),

args為:腳本接受的參數(shù),傳入為list類型,此處與sys.argv連并使用

shortopts:短參數(shù)。就是參考:python3 test.py -v ,這個(gè)-v就是需要用到的短參數(shù)。

longopts=[]:長(zhǎng)參數(shù)。就是參考:python3 test.py --v,兩個(gè)-的就是需要用到的長(zhǎng)參數(shù)。

先簡(jiǎn)單有一個(gè)印象。

那后面需要用到的參數(shù)怎么傳入,怎么處理呢?

參數(shù)處理:

import sys
import getopt

opts = getopt.getopt(sys.argv[1:],"-h",["help"])
print(opts)

我們?cè)诿钚信芤幌拢?/p>

GL$python3 111.py --help
([('--help', '')], [])

GL$python3 111.py -h 
([('-h', '')], [])

打印了如上的內(nèi)容,我們依次看一下

1、我們?yōu)槭裁匆胹ys.argv[1:]呢?是因?yàn)榈?個(gè)是函數(shù)本身,所以接受除本身之外的所以參數(shù)

2、返回的是一個(gè)tuple,第一個(gè)list我們可以理解是傳入的--h,加到了一個(gè)list里,第二個(gè)list則是-h后面加的參數(shù),這里沒有加,所以為空

下面來實(shí)踐一下:

import getopt
import sys

opts,args = getopt.getopt(sys.argv[1:],'-h-w:-v',['help','version'])
for opt_name,opt_value in opts:

  if opt_name in ('-h','--help'):
    print(opt_name,"this is help")
    exit()

  if opt_name == '-w':
    print("-w:",opt_value)
    exit()

  if opt_name in ('-v','--version'):

    print('version:0.01')
    exit()

運(yùn)行起來看看:

GL$python3 111.py -w 123-w: 123GL$python3 111.py -h
-h this is help
GL$python3 111.py -v
version:0.01GL$python3 111.py --help
--help this is help

由上,又出現(xiàn)了個(gè)新東西,shortopts里面怎么多了個(gè)冒號(hào)呢??那個(gè)是干啥的?

其實(shí),從上面的例子也可以簡(jiǎn)單看出來,加冒號(hào)意思就是-w后面要加參數(shù),不加冒號(hào)就不用加參數(shù),longopts也是一樣,冒號(hào)用等號(hào)代替。

好,這里都已經(jīng)有些了解了。那么后面的args,是干啥的呀。還有opts又是干啥的呀。

opts 就是分析出的格式信息。args 為不屬于格式信息的剩余的命令行參數(shù)。

opts 是一個(gè)兩元組的列表。(選項(xiàng)串, 附加參數(shù)) 。如果沒有則為空。

下面看例子:

我們?cè)谧铋_頭打印args,也就是加一行 print(args),我就不貼代碼了。

運(yùn)行起來:

GL$python3 111.py --help ssss
['ssss']
--help this is help/GL$python3 111.py -w 123 123
['123']
-w: 123

多余的未識(shí)別的就成了args里面的內(nèi)容了。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • python3 循環(huán)讀取excel文件并寫入json操作

    python3 循環(huán)讀取excel文件并寫入json操作

    這篇文章主要介紹了python3 循環(huán)讀取excel文件并寫入json操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-07-07
  • python3 通過 pybind11 使用Eigen加速代碼的步驟詳解

    python3 通過 pybind11 使用Eigen加速代碼的步驟詳解

    這篇文章主要介紹了python3 通過 pybind11 使用Eigen加速代碼的步驟詳解,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-12-12
  • python免殺技術(shù)shellcode的加載與執(zhí)行

    python免殺技術(shù)shellcode的加載與執(zhí)行

    本文主要介紹了python免殺技術(shù)shellcode的加載與執(zhí)行,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-04-04
  • Python中ini配置文件讀寫的實(shí)現(xiàn)

    Python中ini配置文件讀寫的實(shí)現(xiàn)

    本文主要介紹了Python中ini配置文件讀寫的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • python實(shí)現(xiàn)線程池的方法

    python實(shí)現(xiàn)線程池的方法

    這篇文章主要介紹了python實(shí)現(xiàn)線程池的方法,實(shí)例分析了Python線程池的原理與相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下
    2015-06-06
  • python并發(fā)和異步編程實(shí)例

    python并發(fā)和異步編程實(shí)例

    這篇文章主要為大家詳細(xì)介紹了python并發(fā)和異步編程實(shí)例,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-11-11
  • OpenCV實(shí)戰(zhàn)之AI照片背景替換

    OpenCV實(shí)戰(zhàn)之AI照片背景替換

    不少人在生活中都有摳人像圖換背景的需求。本文將為大家介紹一個(gè)更快的方法,即利用OpenCV實(shí)現(xiàn)AI照片背景替換,感興趣的小伙伴可以試一試
    2022-01-01
  • YOLOv5部署到web端詳細(xì)過程(flask+js簡(jiǎn)單易懂)

    YOLOv5部署到web端詳細(xì)過程(flask+js簡(jiǎn)單易懂)

    YOLOv5是一個(gè)目標(biāo)檢測(cè)模型,Flask是一個(gè)Python的Web框架,下面這篇文章主要給大家介紹了關(guān)于YOLOv5部署到web端(flask+js簡(jiǎn)單易懂)的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-04-04
  • WxPython實(shí)現(xiàn)無邊框界面

    WxPython實(shí)現(xiàn)無邊框界面

    這篇文章主要為大家詳細(xì)介紹了WxPython實(shí)現(xiàn)無邊框界面,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-11-11
  • Anaconda中Python虛擬環(huán)境的創(chuàng)建使用與刪除方法詳解

    Anaconda中Python虛擬環(huán)境的創(chuàng)建使用與刪除方法詳解

    這篇文章主要為大家介紹了在Anaconda環(huán)境下,創(chuàng)建、使用與刪除Python虛擬環(huán)境的方法,具有一定的借鑒價(jià)值,需要的小伙伴可以跟隨小編一起了解一下
    2023-08-08

最新評(píng)論