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

python命令行傳遞參數(shù)的兩種方式

 更新時間:2024年05月11日 10:31:01   作者:我愛Python數(shù)據(jù)挖掘  
python在命令行運行.py文件時,如何在命令行傳遞參數(shù)給運行程序,python默認(rèn)提供了sys模塊的系統(tǒng)參數(shù)屬性實現(xiàn)接收命令行中的外部參數(shù),本文給大家介紹了python命令行傳遞參數(shù)的兩種方式,需要的朋友可以參考下

引言

python在命令行運行.py文件時,如何在命令行傳遞參數(shù)給運行程序,python默認(rèn)提供了sys模塊的系統(tǒng)參數(shù)屬性實現(xiàn)接收命令行中的外部參數(shù)。

另一種則是通過argparse模塊實現(xiàn)的,argparse模塊可以實現(xiàn)事先對命令行參數(shù)的初始化,更加的便于命令行參數(shù)的管理。

1、sys.argv參數(shù)

sys.argv的命令行參數(shù)獲取方式比較的簡單,直接通過提取sys.argv的值就可以獲取到其對應(yīng)的參數(shù)。

比如,下面寫一個hello_world.py模塊,并且在其中引用了命令行參數(shù)。

import sys

print('Hi ' + str(sys.argv[1]) + ', welcome to Hello World!')

直接在命令行執(zhí)行當(dāng)前的.py文件,執(zhí)行命令應(yīng)該是這樣的。

python hello_world.py Siri

這時我們預(yù)期的結(jié)果應(yīng)該是下面這樣的。

# Hi Siri, welcome to Hello World!

執(zhí)行后的結(jié)果和預(yù)期的運行結(jié)果是一模一樣的。

在運行時,有一個不好的地方時,若是在命令行沒有傳遞足夠的參數(shù),則會直接拋出下面的異常。

2、argparse參數(shù)

使用argparse模塊,有一個好處就是事先對需要在命令行傳遞的參數(shù)做一個初始化的賦值,若是命令行沒有值的時候則可以使用默認(rèn)值來賦值。

并且argparse模塊可以通過參數(shù)構(gòu)造器ArgumentParser實現(xiàn)對參數(shù)的管理,看起來一目了然。

import argparse

# 初始化參數(shù)構(gòu)造器
parser = argparse.ArgumentParser()

# 在參數(shù)構(gòu)造器中添加兩個命令行參數(shù)
parser.add_argument('--name', type=str, default='Siri')
parser.add_argument('--message', type=str, default=',Welcom to Python World!')

# 獲取所有的命令行參數(shù)
args = parser.parse_args()

print('Hi ' + str(args.name) + str(args.message))

同樣的,創(chuàng)建一個hello_python.py文件,來運行上述代碼塊,看一下執(zhí)行效果。

python hello_python.py

可以發(fā)現(xiàn)在未添加命令行的參數(shù)傳遞后,默認(rèn)使用的是我們構(gòu)造器中添加的參數(shù)默認(rèn)值來進(jìn)行賦值的。

接下來,若是我們在命令行中再次對參數(shù)進(jìn)行重新賦值是怎樣的效果。

python hello_python.py --name Laow  --message Hello_World

到此這篇關(guān)于python命令行傳遞參數(shù)的兩種方式的文章就介紹到這了,更多相關(guān)python命令行傳遞參數(shù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Pandas中迭代DataFrame行的方法總結(jié)

    Pandas中迭代DataFrame行的方法總結(jié)

    Python是進(jìn)行數(shù)據(jù)分析的一種很好的語言,主要是因為以數(shù)據(jù)為中心的Python包的奇妙生態(tài)系統(tǒng),本文主要為大家介紹了如何在Pandas中迭代DataFrame中的行,有需要的可以參考下
    2023-09-09
  • 詳解Python中高階函數(shù)(map,filter,reduce,sorted)的使用

    詳解Python中高階函數(shù)(map,filter,reduce,sorted)的使用

    高階函數(shù)就是能夠把函數(shù)當(dāng)成參數(shù)傳遞的函數(shù)就是高階函數(shù),換句話說如果一個函數(shù)的參數(shù)是函數(shù),那么這個函數(shù)就是一個高階函數(shù)。本文為大家詳細(xì)講解了Python中常用的四個高階函數(shù),感興趣的可以了解一下
    2022-04-04
  • Python多繼承原理與用法示例

    Python多繼承原理與用法示例

    這篇文章主要介紹了Python多繼承原理與用法,簡單描述了Python多繼承的相關(guān)概念、原理并結(jié)合實例形式分析了Python多繼承的具體定義、使用方法及相關(guān)操作注意事項,需要的朋友可以參考下
    2018-08-08
  • Python用?matplotlib?繪制柱狀圖

    Python用?matplotlib?繪制柱狀圖

    這篇文章主要介紹了Python如何用?matplotlib?繪制柱狀圖,文章對matplotlib模塊中詳細(xì)學(xué)習(xí)繪制各種柱狀圖標(biāo)相關(guān)屬性和方法,在遇到需要直觀展示離散數(shù)據(jù)點的差異時,我們可以使用bar()或者barh()繪制美觀的圖表。具有一定的參考價值,需要的朋友可以參考一下
    2021-12-12
  • Python異步執(zhí)行CMD命令的具體實現(xiàn)

    Python異步執(zhí)行CMD命令的具體實現(xiàn)

    異步執(zhí)行CMD命令是提高Python程序性能的有效方法,本文就來介紹一下Python異步執(zhí)行CMD命令的具體實現(xiàn),具有一定的參考價值,感興趣的可以了解一下
    2024-05-05
  • Python3使用xlrd、xlwt處理Excel方法數(shù)據(jù)

    Python3使用xlrd、xlwt處理Excel方法數(shù)據(jù)

    這篇文章主要介紹了Python3使用xlrd、xlwt處理Excel方法數(shù)據(jù),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-02-02
  • Python中的super用法詳解

    Python中的super用法詳解

    這篇文章主要介紹了Python中的super用法詳解,本文講解了關(guān)于super問題的發(fā)現(xiàn)與提出、走進(jìn)Python的源碼世界分析super的實現(xiàn)、延續(xù)的討論super等內(nèi)容,需要的朋友可以參考下
    2015-05-05
  • Python簡易版圖書管理系統(tǒng)

    Python簡易版圖書管理系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了Python如何實現(xiàn)簡易版圖書管理系統(tǒng),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-08-08
  • Python數(shù)據(jù)結(jié)構(gòu)與算法之圖的廣度優(yōu)先與深度優(yōu)先搜索算法示例

    Python數(shù)據(jù)結(jié)構(gòu)與算法之圖的廣度優(yōu)先與深度優(yōu)先搜索算法示例

    這篇文章主要介紹了Python數(shù)據(jù)結(jié)構(gòu)與算法之圖的廣度優(yōu)先與深度優(yōu)先搜索算法,結(jié)合實例形式分析了圖的廣度優(yōu)先與深度優(yōu)先搜索算法原理與相關(guān)實現(xiàn)技巧,需要的朋友可以參考下
    2017-12-12
  • 基于Python實現(xiàn)中秋佳節(jié)月餅搶購腳本

    基于Python實現(xiàn)中秋佳節(jié)月餅搶購腳本

    這篇文章主要介紹了Python版中秋佳節(jié)月餅搶購腳本,今天要用的是一個測試工具的庫Selenium,今天我們就是用它去實現(xiàn)自動化搶購月餅,其實就是用這個工具"模擬"人為操作瀏覽器相應(yīng)的操作,比如登陸,勾選購物車商品,下單購買等等操作,需要的朋友可以參考下
    2022-09-09

最新評論