介紹如何在 Python 中使用 sys.argv
讀取命令列參數,取得使用者輸入的資料。
命令列的參數就是當使用者在執行程式時,附加在指令後方的參數,使用者可以透過參數來傳遞各種資料、選項或檔案等資訊。
sys.argv
取得命令列參數
在 Python 中我們可以使用 sys.argv
來取得執行 Python 指令稿時所指定的命令列參數。
import sys # 查看 sys.argv 列表內容 print("sys.argv 內容:", sys.argv) # 第 2 個參數 print("第 2 個參數:", sys.argv[2])
假設這個 Python 指令稿的檔案名稱是 my_script.py
,則執行後就會有這樣的結果:
# 執行 Python 指令稿
python3 my_script.py one two three
sys.argv 內容: ['my_script.py', 'one', 'two', 'three'] 第 2 個參數: two
在 Python 指令稿中的 sys.argv
列表會包含指令稿本身的檔案名稱,以及所有附加在指令列的參數,從這裡就可以取得所有需要的參數資料。
檢查並取得各參數
以下範例可以檢查參數的數量,並逐一取得每個命令列參數的內容:
import sys # 取得參數數量 n = len(sys.argv) print("參數數量:", n - 1) # 檢查參數數量 if n < 3: print("參數不足,至少需要 2 個參數。") sys.exit() # 顯示所有參數 for i in sys.argv[1:]: print(i)
假設這個 Python 指令稿的檔案名稱為 chkarg.py
,執行的結果會像這樣:
# 執行 Python 指令稿
python3 chkarg.py one
參數數量: 1 參數不足,至少需要 2 個參數。
# 執行 Python 指令稿
python3 chkarg.py one two three
參數數量: 3 one two three