導航:首頁 > 程序命令 > 命令行參數python

命令行參數python

發布時間:2023-09-06 18:01:13

python寫一個命令,可是我試了半天,不知道參數怎麼寫。

如果您想寫一個命令行程序,可以使用Python的argparse模塊來實現。argparse模塊提供了一組簡單而強大逗桐的命令行解析工具,可以讓您快速構建復雜的命令行程序。

下面是一個簡單的例子,展示了如何山畢坦使用argparse模塊來定義命令行參數:



在上面的代碼中,我們首先數陵導入argparse模塊,然後創建一個ArgumentParser對象,並使用add_argument()方法來定義命令行參數。其中,第一個參數是參數的名字,第二個參數是參數的別名,help參數用來指定幫助信息,type參數用來指定參數的類型。

在這個例子中,我們定義了兩個參數:name和age,分別表示用戶的名字和年齡。您可以在命令行中使用


import argparse

parser = argparse.ArgumentParser()

parser.add_argument('-n', '--name', help='Your name')

parser.add_argument('-a', '--age', type=int, help='Your age')

args = parser.parse_args()

print('Hello, {}! You are {} years old.'.format(args.name, args.age))

Ⅱ Python筆記:命令行參數解析

有些時候我們需要通過命令行將參數傳遞給腳本,C語言中有個getopt()方法,python中也有個類似的命令行參數解析方法getopt()。python也提供了比getopt()更簡潔的argparse方法。另外,sys模塊也可以實現簡單的參數解析,本文將對這3種命令行參數解析方法簡要介紹。

sys.argv是傳入的參數列表,sys.argv[0]是當前python腳本的名稱,sys.argv[1]表示第一個參數,以此類推。

命令行運行:

可以看到傳入的參數通過sys.argv來獲取,它就是一個參數列表。

python的getopt與C語言的的getopt()函數類似。相比於sys模塊,支持長參數和短參數,並對參數解析賦值。但它需要結合sys模塊進行參數解析,語法格式如下:

短參數為單個英文字母,如果必須賦值需要在後面加英文冒號( : ),長參數一般為字元串(相比短參數,更能說明參數含義),如果必須賦值需要在後面加等號( = )。

命令行運行:

注意:短參數(options)和長參數(long_options)不需要一一對應,可以任意順序,也可以只有短參數或者只有長參數。

argparse模塊提供了很多可以設置的參數,例如參數的默認值,幫助消息,參數的數據類型等。argparse類主要包括ArgumentParser、add_argument和parse_args三個方法。

下面介紹這三個函數的使用方法。

argparse默認提供了 -h | --help 參數:

命令行運行:

下面列出部分參數:

下面來添加參數:

命令行運行:

parse_args() 方法用於解析參數,在前面的示例代碼中使用parse_args方法來提取參數值,對於無效或者錯誤的參數會列印錯誤信息和幫助信息:

命令行運行:

本文介紹了Python的三種命令行參數解析方法sys.argv、getopt和argparse,可以根據自己的需要進行選擇,getopt和argparse兩種方法相比來說,建議選擇argparse,代碼量更少更簡潔。更詳細的使用方法參考官方文檔:

--THE END--

Ⅲ Python 命令行(三)- 命令行參數解析

Python 標准庫中的 argparse 可以根據程序中的定義,從 sys.argv 中解析參數,並且自動生成幫助信息。

使用 add_argument 方法為應用程序添加參數,其中 add_argument 方法的參數比較多,這也使得 argparse 庫的使用不夠簡潔,後續將繼續為大家介紹更好用的命令行參數解析的開源庫 click

下面是 add_argument 方法的參數及含義總結:

解析參數需要使用 ArgumentParser 實例的 parse_args 方法,此方法返回一個 NameSpace 對象;可以通過訪問 NameSpace 對象屬性的方式獲取參數值。

下面是一個簡單的例子:通過 parser.server 獲取 --host 選項的值,通過 parse.boolean_switch 獲取 -t 選項的值。

查看幫助信息:

參數默認值:

指定參數:

列印幫助信息:

列印版本信息:

傳遞參數:

Ⅳ 在Python中如何獲取命令行參數

Ⅳ Python語言命令行參數解析接收參數執行腳本的三種方法

在Windows系統上,Python腳本文件當然雙擊就能直接運行。不過我們往往需要在執行腳本的時候還要添加相應的參數,另外在Ubuntu系統中,我們執行文件往往和其他系統或用戶命令一樣,需要在終端中輸入,參數當然也要一並加上。所以機智客這里說的意思是,執行Python腳本(.py文件)時候需要輸入相應參數,這樣程序怎麼寫的方法。

上面這么說可能有點不明不白的,或者有朋友會用但未必知道命令行解析這種表達方式。舉個例子,比如我們在執行一個腳本文件的時候,可能會在CMD或者終端中輸入python demo.py 10或者python demo.py --separator 10後面這個數字就是參數。我們要編寫這樣的腳本或者函數,有哪些方法呢?這里列舉三種常用的。

一個是用系統模塊sys。引入模塊語句是import sys。也就是Python語言的內置庫中的sys.argv。argv通常有argv[0],argv[1],argv[2]這樣幾個參數。基本使用方法是m_sil_len = int(sys.argv[1])傳入第一個參數,sil_th = int(sys.argv[2])傳入第二個參數。如果是簡單一點的參數或者腳本,我們引入了sys。可以直接用這個傳入參數。

一種是用模塊argparse來實現,這是標准庫中推薦的命令行解析模塊。引入模塊語句是import argparse。基本使用方法是引入模塊後,先parser = argparse.ArgumentParser()創建對象,然後調用方法添加參數parser.add_argument("jzk", help="這是關於參數的說明", type=int),之後args = parser.parse_args()使用解析就可以用了。機智客看到這個方法在很多項目腳本中使用。我們在閱讀機器學習AI之類的開源項目,就會發現很多人用的都是這個方法。

還有一個就是用fire模塊,用於生成命令行界面的工具。引入模塊語言是import fire。它默認以-為參數分隔符的。基本使用方法是fire.Fire()。這個不僅可以做命令行的參數解析,還可以還給一個類class添加命令行。所以使用時候括弧里填入函數名或者類名即可,也就是裡面的參數可以是其他Python對象。

Ⅵ Python 命令行參數是怎麼用的啊完全不懂,望賜教。。。

importsys

a=sys.argv[1]#獲取第一個參數

b=sys.argv[2]#獲取第二個參數

printa

printb


在命令行運行:(python腳本文件路徑)空格(第一個參數)空格(第二個參數)

Ⅶ python,命令行參數的短格式和長格式分別是什麼意思

Python代碼
1. try:
2. opts, args = getopt.getopt(sys.argv[1:], "ho:", ["help", "
output="])
3. except getopt.GetoptError: 4. # print help information and exit:

1. 處理所使用的函數叫getopt() ,因為是直接使用import 導入的getopt 模塊,所以要加上限定getopt 才可以。
2. 使用sys.argv[1:] 過濾掉第一個參數(它是執行腳本的名字,不應算作參數的一部分)。
3. 使用短格式分析串"ho:" 。當一個選項只是表示開關狀態時,即後面不帶附加參數時,在分析串中寫入選項字元。當選項後面是帶一個附加參數時,在分析串中寫入選項字元同時後面加一個":" 號 。所以"ho:" 就表示"h" 是一個開關選項;"o:" 則表示後面應該帶一個參數。
4. 使用長格式分析串列表:["help", "output="] 。長格式串也可以有開關狀態,即後面不跟"=" 號。如果跟一個等號則表示後面還應有一個參數 。這個長格式表示"help" 是一個開關選項;"output=" 則表示後面應該帶一個參數。
5. 調用getopt 函數。函數返回兩個列表:opts 和args 。opts 為分析出的格式信息。args 為不屬於格式信息的剩餘的命令行參數。opts 是一個兩元組的列表。每個元素為:( 選項串, 附加參數) 。如果沒有附加參數則為空串'' 。

Ⅷ python如何通過命令行輸入參數

形式一:直接在命令行輸入參數

第一個紅色框為命令行參數

第二個框為控制台模式(Terminal)

形式二:在編譯工具中配置參數

點擊運行:點擊紅色框 編輯配置

如下圖:紅色框即為設置的命令行參數

閱讀全文

與命令行參數python相關的資料

熱點內容
sha1加密演算法java 瀏覽:232
單片機ds1302程序 瀏覽:738
杜比壓縮開還是關怎樣判斷 瀏覽:366
對象類型轉換java編譯和運行 瀏覽:284
行政命令是什麼 瀏覽:371
android調用系統郵件 瀏覽:33
測溫軟體app是如何實現的 瀏覽:585
江蘇伺服器機房按需定製雲主機 瀏覽:639
c程序員筆試 瀏覽:694
excel怎麼引用統一文件夾 瀏覽:249
怎麼把微信抖音加密 瀏覽:304
android滑動進度條 瀏覽:834
javagmt轉換 瀏覽:826
linux查看snmp 瀏覽:24
ug80車床編程 瀏覽:518
怎麼加速python計算素數 瀏覽:243
腰椎第五節壓縮性骨折 瀏覽:92
程序員開會的句子 瀏覽:994
用哪個app寫編程 瀏覽:647
android通訊錄增刪改查 瀏覽:731