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

Python 獲得命令行參數(shù)的方法(推薦)

 更新時(shí)間:2018年01月24日 09:06:48   作者:寒尋  
本篇將介紹python中sys, getopt模塊處理命令行參數(shù)的方法,本文給大家介紹的非常詳細(xì),具有參考借鑒價(jià)值,需要的朋友參考下吧

本篇將介紹python中sys, getopt模塊處理命令行參數(shù)

如果想對(duì)python腳本傳參數(shù),python中對(duì)應(yīng)的argc, argv(c語(yǔ)言的命令行參數(shù))是什么呢?

需要模塊:sys

參數(shù)個(gè)數(shù):len(sys.argv)

腳本名:    sys.argv[0]
參數(shù)1:     sys.argv[1]
參數(shù)2:     sys.argv[2]

test.py

import sys
print "腳本名:", sys.argv[0]
for i in range(1, len(sys.argv)):
 print "參數(shù)", i, sys.argv[i]
>>>python test.py hello world

腳本名:test.py

參數(shù) 1 hello
參數(shù) 2 world

python中使用命令行選項(xiàng):

例如我們需要一個(gè)convert.py腳本。它的作用是處理一個(gè)文件,并將處理后的結(jié)果輸出到另一個(gè)文件中。

要求該腳本滿足以下條件:

1.通過-i -o選項(xiàng)來(lái)區(qū)別參數(shù)是輸入文件還是輸出文件.

>>> python convert.py -i inputfile -o outputfile

2.當(dāng)不知道convert.py需要哪些參數(shù)時(shí),用-h打印出幫助信息

>>> python convert.py -h

getopt函數(shù)原形:

getopt.getopt(args, options[, long_options])
convert.py
python test.py -i inputfile -o outputfile

import sys, getopt
opts, args = getopt.getopt(sys.argv[1:], "hi:o:")
input_file=""
output_file=""
for op, value in opts:
 if op == "-i":
  input_file = value
 elif op == "-o":
  output_file = value
 elif op == "-h":
  usage()
  sys.exit()

代碼解釋:

a) sys.argv[1:]為要處理的參數(shù)列表,sys.argv[0]為腳本名,所以用sys.argv[1:]過濾掉腳本名。

b) "hi:o:": 當(dāng)一個(gè)選項(xiàng)只是表示開關(guān)狀態(tài)時(shí),即后面不帶附加參數(shù)時(shí),在分析串中寫入選項(xiàng)字符。當(dāng)選項(xiàng)后面是帶一個(gè)附加參數(shù)時(shí),在分析串中寫入選項(xiàng)字符同時(shí)后面加一個(gè)":"號(hào)。

  所以"hi:o:"就表示"h"是一個(gè)開關(guān)選項(xiàng);

  "i:"和"o:"則表示后面應(yīng)該帶一個(gè)參數(shù)。

c) 調(diào)用getopt函數(shù)。函數(shù)返回兩個(gè)列表:opts和args。

  opts為分析出的格式信息。opts是一個(gè)兩元組的列表。每個(gè)元素為:(選項(xiàng)串,附加參數(shù))。如果沒有附加參數(shù)則為空串''。

  上面例子中的ops為:[('h',''),('-i','inputfile'),('-o','outputfile')]

  args為不屬于格式信息的剩余的命令行參數(shù)。

getopt函數(shù)的第三個(gè)參數(shù)[, long_options]為可選的長(zhǎng)選項(xiàng)參數(shù),上面例子中的都為短選項(xiàng)(如-i -o)

長(zhǎng)選項(xiàng)格式舉例:

--version
--file=error.txt

讓一個(gè)腳本同時(shí)支持短選項(xiàng)和長(zhǎng)選項(xiàng)

getopt.getopt(sys.argv[1:], "hi:o:", ["version", "file="])

總結(jié)

以上所述是小編給大家介紹的Python 獲得命令行參數(shù)的方法,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!

相關(guān)文章

  • Python?Web后端開發(fā)中的增查改刪處理

    Python?Web后端開發(fā)中的增查改刪處理

    這篇文章主要介紹了Python?Web后端開發(fā)中的增查改刪處理,文章圍繞主題?展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-08-08
  • Python類中的裝飾器在當(dāng)前類中的聲明與調(diào)用詳解

    Python類中的裝飾器在當(dāng)前類中的聲明與調(diào)用詳解

    這篇文章主要介紹了Python類中的裝飾器在當(dāng)前類中的聲明與調(diào)用詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來(lái)看看吧
    2020-04-04
  • Python?Flask中Cookie和Session區(qū)別詳解

    Python?Flask中Cookie和Session區(qū)別詳解

    Flask是一個(gè)使用?Python?編寫的輕量級(jí)?Web?應(yīng)用框架。其?WSGI?工具箱采用?Werkzeug?,模板引擎則使用?Jinja2?。Flask使用?BSD?授權(quán)。Flask也被稱為?“microframework”?,因?yàn)樗褂煤?jiǎn)單的核心,用?extension?增加其他功能,F(xiàn)lask中Cookie和Session有什么區(qū)別呢
    2022-07-07
  • 從pandas一個(gè)單元格的字符串中提取字符串方式

    從pandas一個(gè)單元格的字符串中提取字符串方式

    今天小編就為大家分享一篇從pandas一個(gè)單元格的字符串中提取字符串方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來(lái)看看吧
    2019-12-12
  • Python查找算法之插補(bǔ)查找算法的實(shí)現(xiàn)

    Python查找算法之插補(bǔ)查找算法的實(shí)現(xiàn)

    這篇文章主要介紹了Python查找算法之插補(bǔ)查找算法的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04
  • pytorch 實(shí)現(xiàn)打印模型的參數(shù)值

    pytorch 實(shí)現(xiàn)打印模型的參數(shù)值

    今天小編就為大家分享一篇pytorch 實(shí)現(xiàn)打印模型的參數(shù)值,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來(lái)看看吧
    2019-12-12
  • Python?切片為什么不會(huì)索引越界?

    Python?切片為什么不會(huì)索引越界?

    這篇文章主要介紹了Python?切片為什么不會(huì)索引越界?切片(slice)是?Python?中一種很有特色的特性,在正式開始之前,我們先來(lái)從關(guān)于切片的相關(guān)知識(shí)開始介紹,感興趣的小伙伴一起參考參考呀</P><P>
    2021-12-12
  • pyqt5 QProgressBar清空進(jìn)度條的實(shí)例

    pyqt5 QProgressBar清空進(jìn)度條的實(shí)例

    今天小編就為大家分享一篇pyqt5 QProgressBar清空進(jìn)度條的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來(lái)看看吧
    2019-06-06
  • python操作MySQL的詳細(xì)教程

    python操作MySQL的詳細(xì)教程

    PyMySQL 是一個(gè)純 Python 的庫(kù),用于連接 MySQL 數(shù)據(jù)庫(kù),并執(zhí)行 SQL 語(yǔ)句,該庫(kù)的主要用途是通過 Python 代碼與 MySQL 數(shù)據(jù)庫(kù)進(jìn)行交互,比如執(zhí)行查詢、插入數(shù)據(jù)、更新數(shù)據(jù)、刪除數(shù)據(jù)等操作,本文介紹了python操作MySQL的詳細(xì)教程,需要的朋友可以參考下
    2024-10-10
  • 深入了解Python中frozenset的功能與用法

    深入了解Python中frozenset的功能與用法

    在Python中,frozenset是一種與set類似的數(shù)據(jù)類型,但具有不可變性,本文將詳細(xì)介紹frozenset的作用、用法以及與set的區(qū)別,感興趣的可以了解下
    2024-01-01

最新評(píng)論

新龙县| 颍上县| 资溪县| 登封市| 巢湖市| 安康市| 梅州市| 望都县| 全州县| 运城市| 凤山县| 霍林郭勒市| 简阳市| 宝清县| 商洛市| 会昌县| 石嘴山市| 林州市| 黄陵县| 高密市| 新源县| 东乌珠穆沁旗| 陵川县| 余姚市| 资中县| 深水埗区| 大安市| 遂宁市| 宜宾县| 宜良县| 疏勒县| 昌都县| 平遥县| 兴海县| 石泉县| 雅江县| 沅陵县| 舞钢市| 阿拉善左旗| 徐闻县| 敦化市|