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

python獲取命令行參數(shù)實例方法講解

 更新時間:2020年11月02日 08:30:02   作者:PYCN  
在本篇文章里小編給大家整理的是一篇關(guān)于python獲取命令行參數(shù)實例方法講解內(nèi)容,有興趣的朋友們可以學(xué)習(xí)下。

Python 在命令行解析方面給出了類似的幾個選擇:自己解析, 自給自足(batteries-included)的方式,以及大量的第三方方式。

自己解析

你可以從 sys 模塊中獲取程序的參數(shù)。

import sys
 
if __name__ == '__main__':
   for value in sys.argv:
       print(value)

自給自足

在 Python 標(biāo)準(zhǔn)庫中已經(jīng)有幾個參數(shù)解析模塊的實現(xiàn): getopt 、 optparse ,以及最近的 argparse 。argparse 允許程序員為用戶提供一致的、有幫助的用戶體驗,但就像它的 GNU 前輩一樣,它需要程序員做大量的工作和“ 模板代碼 ”才能使它“奏效”。

from argparse import ArgumentParser
 
if __name__ == "__main__":
 
   argparser = ArgumentParser(description='My Cool Program')
   argparser.add_argument("--foo", "-f", help="A user supplied foo")
   argparser.add_argument("--bar", "-b", help="A user supplied bar")
   
   results = argparser.parse_args()
   print(results.foo, results.bar)

CLI 的現(xiàn)代方法

Click 框架使用 裝飾器 的方式來構(gòu)建命令行解析。

import click
 
@click.command()
@click.option("-f", "--foo", default="foo", help="User supplied foo.")
@click.option("-b", "--bar", default="bar", help="User supplied bar.")
def echo(foo, bar):
    """My Cool Program
   
    It does stuff. Here is the documentation for it.
    """
    print(foo, bar)
   
if __name__ == "__main__":
echo()

在 Click 接口中添加參數(shù)就像在堆棧中添加另一個裝飾符并將新的參數(shù)添加到函數(shù)定義中一樣簡單。

知識拓展:

Typer 建立在 Click 之上,是一個更新的 CLI 框架,它結(jié)合了 Click 的功能和現(xiàn)代 Python 類型提示 。使用 Click 的缺點之一是必須在函數(shù)中添加一堆裝飾符。CLI 參數(shù)必須在兩個地方指定:裝飾符和函數(shù)參數(shù)列表。Typer 免去你造輪子 去寫 CLI 規(guī)范,讓代碼更容易閱讀和維護(hù)。

import typer
 
cli = typer.Typer()
 
@cli.command()
def echo(foo: str = "foo", bar: str = "bar"):
    """My Cool Program
   
    It does stuff. Here is the documentation for it.
    """
    print(foo, bar)
   
if __name__ == "__main__":
cli()

 

到此這篇關(guān)于python獲取命令行參數(shù)實例方法講解的文章就介紹到這了,更多相關(guān)python獲取命令行參數(shù)實現(xiàn)方法內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 不同版本中Python matplotlib.pyplot.draw()界面繪制異常問題的解決

    不同版本中Python matplotlib.pyplot.draw()界面繪制異常問題的解決

    這篇文章主要給大家介紹了關(guān)于不同版本中Python matplotlib.pyplot.draw()界面繪制異常問題的解決方法,文中介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-09-09
  • python連接池pooledDB源碼閱讀參數(shù)的使用

    python連接池pooledDB源碼閱讀參數(shù)的使用

    這篇文章主要介紹了python連接池pooledDB源碼閱讀參數(shù)的使用,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-07-07
  • Python自動化辦公之Word文檔的創(chuàng)建與生成

    Python自動化辦公之Word文檔的創(chuàng)建與生成

    這篇文章主要為大家詳細(xì)介紹了如何通過python腳本來自動生成一個?word文檔,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下
    2022-05-05
  • pycharm將英文設(shè)置為中文的詳細(xì)教程

    pycharm將英文設(shè)置為中文的詳細(xì)教程

    使用過很多的IDLE程序,這其中最大的問題就是英文版本,初次使用不習(xí)慣和英文基礎(chǔ)不好,下面這篇文章主要給大家介紹了關(guān)于pycharm將英文設(shè)置為中文的詳細(xì)教程,需要的朋友可以參考下
    2023-05-05
  • Python基于LightGBM進(jìn)行時間序列預(yù)測

    Python基于LightGBM進(jìn)行時間序列預(yù)測

    LightGBM是擴(kuò)展機(jī)器學(xué)習(xí)系統(tǒng)。是一款基于GBDT(梯度提升決策樹)算法的分布梯度提升框架。其設(shè)計思路主要集中在減少數(shù)據(jù)對內(nèi)存與計算性能的使用上,以及減少多機(jī)器并行計算時的通訊代價。本文將通過LightGBM進(jìn)行時間序列預(yù)測,感興趣的可以了解一下
    2022-03-03
  • Python數(shù)據(jù)庫安裝及MySQL?Connector應(yīng)用教程

    Python數(shù)據(jù)庫安裝及MySQL?Connector應(yīng)用教程

    這篇文章主要為大家介紹了Python數(shù)據(jù)庫安裝及MySQL Connector應(yīng)用教程,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-11-11
  • 一款強(qiáng)大的端到端測試工具Playwright介紹

    一款強(qiáng)大的端到端測試工具Playwright介紹

    這篇文章主要為大家介紹了一款強(qiáng)大的端到端測試工具Playwright介紹,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-01-01
  • 簡單了解Django模板的使用

    簡單了解Django模板的使用

    這篇文章主要介紹了簡單了解Django模板的使用,具有一定借鑒價值,需要的朋友可以參考下。
    2017-12-12
  • 使用python進(jìn)行雷電接口檢測

    使用python進(jìn)行雷電接口檢測

    這篇文章主要為大家詳細(xì)介紹了如何使用python進(jìn)行雷電接口檢測,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2025-01-01
  • python批量解壓zip文件的方法

    python批量解壓zip文件的方法

    這篇文章主要介紹了python批量解壓zip文件的方法,本文通過實例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-08-08

最新評論

峨边| 玛纳斯县| 麟游县| 枣庄市| 屯门区| 云龙县| 遂川县| 叶城县| 高要市| 通榆县| 望城县| 扎鲁特旗| 屯门区| 庄河市| 嫩江县| 隆林| 樟树市| 通许县| 长治县| 余庆县| 新平| 高碑店市| 泸州市| 东方市| 永登县| 府谷县| 永胜县| 武威市| 广灵县| 宜宾县| 开封县| 连平县| 开江县| 肇源县| 石家庄市| 师宗县| 汝城县| 河曲县| 天全县| 社旗县| 乌兰察布市|