python中的標準輸入和輸出問題

2021-09-19 08:02:24 字數 1389 閱讀 7458

首先我們需要明確所謂的標準輸入和輸出是指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 ...