python從控制台輸入多行資料

2021-10-05 11:23:06 字數 1224 閱讀 5810

python 中sys.stdin可以實現標準輸入,輸入預設為字串格式,可以通過int(),float()進行強制轉換。在輸入一行資料時,會將資料末尾的「\n」獲取到,因此在處理sys.stdin輸入的資料時,應該首先用strip()處理掉資料末尾的換行符。

sys.stdin.readline()表示輸入一行資料。

用sys.stdin輸入多行資料**如下:

import sys

n = sys.stdin.readline(

)data =

int(n)

)for line in sys.stdin:

if line !=

"\n"

:#停止條件

).split())

else

:break

print

(data)

'''輸入資料:

512 23

45 56

結果如下:

['5\n', 5, ['12', '23'], ['45', '56']]

'''

input同樣是python中標準輸入的一種方式,輸入的同樣為字串格式資料,與sys.stdin不同的是,input()不會捕捉到字串末尾的換行符。

用input()實現從控制台輸入多行資料**如下:

data =

n =input()

int(n)

)stopword =

''#停止條件

for line in

iter

(input

,stopword)

:#iter()中第乙個引數是可呼叫的,即可以像函式一樣呼叫他,因此是input,而不是input()))

print

(data)

'''輸入資料:

512 23

12 23

12 32

輸出結果:

['5', 5, ['12', '23'], ['12', '23'], ['12', '32']]

'''

需要注意的是:sys.stdin 和input雖然都能從控制台輸入,但是sys.stdin會將輸入字串末尾的「\n"也捕獲到,input()則不會捕獲」\n「,因此在輸入多行資料是時,兩種方法的停止條件是不同的。

python讀取控制台輸入

筆試常用 input array n input for i in range 0 int n row line input temp str line.split for str in temp str int str print input array 輸入 31 2 3 4 5 6 7 8 9...

C 從控制台輸入年曆,控制台輸出月日曆

1.根據年月日計算星期數的方法 private static intgetweekbyday int year,int month,int day 2.計算指定月數的天數 private static intgetdaysbymonth int year,int month 3.實現月曆 priva...

小菜鳥之路 從控制台輸入

說道輸入首先想到scanner類 j a的掃瞄器類 他可以從讀取指定的資料型別與字串。關鍵還要用到system類的類變數in,它可以接受使用者輸入的資訊,並且是標準的輸入流例項物件。首先,既然scanner是個類,所以用的時候例項化乙個物件 scanner in new scanner system...