[英]Taking multiple lines of strings as command line input in Python
在編碼競賽中,我提供了一個初始化文件,可從中讀取初始參數。 但是,有時參數分散在以下幾行中:
x
a
b
(它們都是整數)
現在,當我閱讀第1行時,我相信我會像這樣存儲x
:
x = int(sys.argv[1])
我該如何照顧其他人? sys.argv[2]
會在第二行給我下一個參數嗎?
更確切地說,將使用:
par_list = sys.argv[1:].split(" ")
給我所有行的參數列表?
這將達到目的:
>> python program.py $(cat input.txt)
示例程序:
import sys
paras = [int(x) for x in sys.argv[1:]]
print(paras)
輸入文件樣本:
42
-1
100
輸出:
>> python program.py $(cat input.txt)
[42, -1, 100]
我假設您要將輸入文件名以cmdline傳遞到python腳本。
python script.py input.txt
在這種情況下, sys.argv[1] = 'input.txt'
將訪問輸入文件的內容:
with open(sys.argv[1], 'r') as f:
lines = f.readlines()
現在, lines
是一個列表,其中包含來自input.txt
所有數據行。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.