Python3中的多行輸入問題
python3的多行輸入問題
因為在OJ上做編程,要求標準輸入,特別是多行輸入。特意查了資料,自己驗證了可行性。
if __name__ == "__main__":
strList = []
for line in sys.stdin: #當沒有接受到輸入結束信號就一直遍歷每一行
tempStr = line.split()#對字符串利用空字符進行切片
strList.extend(tempStr)#把每行的字符串合成到列表Q1:系統(tǒng)如何判斷輸入結束?
A:按下?lián)Q行鍵然后Ctrl+d結束。
Q2:split()的作用?
A:str.split(str="", num=string.count(str)).
split()通過指定分隔符對字符串進行切片,并返回切片結果。str-- 分隔符,默認為所有的空字符,包括空格、換行(\n)、制表符(\t)等。num-- 分割次數。
Q3:為什么選擇list.extend()而不是list.append(),這兩者有何區(qū)別?
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)
輸出是:

所以看程序的需求選擇。
python實現多行輸入
1.通過try...except實現
a = [] while True: ? ? try: ? ? ? ? a.append(input()) ? ? except EOFError: ? ? ? ? print(a) ? ? ? ? break
2.通過sys.stdin實現
import sys for line in sys.stdin: ? ? print(line) ? ? ? # line就是每行的內容
3.輸入結束方式
windows環(huán)境下:ctrl+D
總結
以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
pyqt5教程QGraphicsScene及QGraphicsView使用基礎
這篇文章主要為大家介紹了pyqt5教程中QGraphicsScene及QGraphicsView使用基礎,有序要的朋友可以借鑒參考下,希望能夠有所幫助2021-10-10
python將多個py文件和其他文件打包為exe可執(zhí)行文件
這篇文章主要介紹了python將多個py文件和其他文件打包為exe可執(zhí)行文件,通過準備要打包的工程文件展開詳情,需要的小伙伴可以參考一下2022-05-05
使用httplib模塊來制作Python下HTTP客戶端的方法
這篇文章主要介紹了使用httplib模塊來制作Python下HTTP客戶端的方法,文中列舉了一些httplib下常用的HTTP方法,需要的朋友可以參考下2015-06-06
python使用Windows的wmic命令監(jiān)控文件運行狀況,如有異常發(fā)送郵件報警
這篇文章主要介紹了python使用Windows的wmic命令監(jiān)控文件運行狀況,如有異常發(fā)送郵件報警的示例,幫助大家更好的理解和使用python,感興趣的朋友可以了解下2021-01-01

