1. 程式人生 > >Python3的多行輸入

Python3的多行輸入

因為在OJ上做程式設計,要求標準輸入,特別是多行輸入。特意查了資料,自己驗證了可行性。

if __name__ == "__main__":
    strList = []
    for line in sys.stdin:  #當沒有接受到輸入結束訊號就一直遍歷每一行
        tempStr = line.split()#對字串利用空字元進行切片
        strList.extend(tempStr)#把每行的字串合成到列表

 Q1:系統如何判斷輸入結束?

A:按下換行鍵然後Ctrl+d結束。

Q2:split()的作用?

A:str.split(str="", num=string.count(str)).

      split()通過指定分隔符對字串進行切片,並返回切片結果。

       str -- 分隔符,預設為所有的空字元,包括空格、換行(\n)、製表符(\t)等。

       num -- 分割次數。

Q3:為什麼選擇list.extend()而不是list.append(),這兩者有何區別?

 A:extend()是將新物件的內容新增到列表,append()是將新物件整體新增到列表。如下圖:

list1 = [1, 2, 3]
list2 = [4, 5, 6]
list1.append(list2)

輸出是:

list1 = [1, 2, 3]
list2 = [4, 5, 6]
list1.extend(list2)

輸出是:

     所以看程式的需求選擇。