Python3的多行輸入
阿新 • • 發佈:2019-01-31
因為在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)
輸出是:
所以看程式的需求選擇。