首先我們需要明確所謂的標準輸入和輸出是指sys模組中的stdin(輸入)和std.out(輸出)命令,所以再次之前需要匯入模組,如下
import sys
關於sys.stdin與input的區別,這裡就不再贅述,感興趣的童鞋可以參見下面這篇部落格
以及
接下來我們主要說一下使用sys.stdin和sys.stdout中所遇到的問題以及解決方法
首先看關於sys.stdin的用法,前面說到了,這是乙個標準的輸入,所以並不需要input了,看下面這段**
# 標準輸出
import sys # 匯入sys模組
print("請輸入你的名字:")
name = sys.stdin.readline() # 只讀取了一行的內容
print("hello,", name)
注意,那麼問題來了,要讀取多行資料怎麼辦呢?既然一次只能讀一行,那麼多行資料就不停地重複讀取(一行一行的讀取)就好了嗎,所以這裡我們借助乙個簡單的迴圈就可以實現,**如下
import sys
# 這裡考慮一行資料裡有多個資料,所以我們用二維list來進行儲存
num = [[0 for col in range(0)] for row in range(2)]
s = sys.stdin.readline().strip() # 得到第一行的資料
for i in range(2):
temp = s.split() # 刪掉字串的首尾空格
num[i] = list(range(len(temp)))
for kk in range(len(temp)):
num[i][kk] = int(temp[kk])
s = sys.stdin.readline().strip()
print("num=", num)
注意1.這裡我們假設已經知道資料有多少行,上面舉例是2行,如果是n行就把上面的range(2)改為range(n)即可(第三行和第五行)
2. 上面的num使用來儲存資料的,初始化的樣子如下
執行結果如圖
至此,我們的讀取工作就已經完成了。
標準輸入,標準輸出和標準錯誤
當我們使用檔案描述符進行操作時,需要操作標準輸入 標準輸出 標準錯誤,可以包含如下標頭檔案 include這個標頭檔案中定義了標準裝置 standard file descriptors.define stdin fileno 0 standard input.define stdout filen...
python標準輸入輸出
sys模組 usr bin python2.6 import sysfor line in sys.stdin print line,先寫乙個指令碼,顯示行號和內容,之後引用它 usr bin env python import sys counter 1 while true line sys.s...
Python標準輸入輸出
以乙個從控制台接收使用者輸入的名字字串為例,排除空格和單純的換行符 import sys while true sys.stdout.write 請輸入你的名字 name sys.stdin.readline if not name.strip sys.stdout.write 輸入的名字為空 n ...