Python中用input()和print()体现输入输出重定向
眾所周知,在Python中,
語句:變量=input() 的功能是:從鍵盤讀取數(shù)據(jù)到內存變量,此過程為輸入。此時,鍵盤為標準輸入設備,對應的文件對象名為sys.stdin。
語句:input(變量) 的功能是:將內存變量的值輸出到屏幕,此過程為輸出。此時,屏幕為標準輸出設備,對應的文件對象名為sys.stdout
可以輕松地通過對sys.stdin和sys.stdout重定向后,可用input()實現(xiàn)從文本文件讀取數(shù)據(jù),而不是從鍵盤讀取數(shù)據(jù),同理,可用print()實現(xiàn)將內存變量值輸出到文本文件,而不是屏幕。
讓我通過如下例子來展示Python的輸入輸出重定向。
例如,我們的目標是讓程序從文本文件中讀取用空格分隔的一組數(shù)據(jù),將數(shù)值翻倍后,寫入到另一個文本文件。
作法如下:
先準備一個文件與以下Python代碼在同一目錄的文本文件myDataInput.txt,文件中內容如下
1 2 3 4 5 6 7 8 9 10然后,將以下Python代碼存放在與myDataInput.txt同一個目錄下,運行此Python代碼,程序的input()將從myDataInput.txt讀取數(shù)據(jù)到內存變量,經(jīng)過運算后,通過print()語句將結果存放到文件myDataOutput.txt(此文件如果在程序運行是沒有創(chuàng)建,將被自動創(chuàng)建,如果此文件已經(jīng)存在,則在程序運行后被覆蓋)。
import syssys.stdin=open('myDataInput.txt','r') #此語句實現(xiàn)了將標準輸入重定向為myDataInput.txt sys.stdout=open('myDataOutput.txt','w') #此語句實現(xiàn)了將標準輸出重定向為myDataoutput.txtaList=[2*int(e) for e in input().split()] print(aList)運行以上程序運行后,在同一目錄下將有一個名為myDataoutput.txt的文件。用文本編輯器打開此文件將看到如下結果:
2 4 6 8 10 12 14 16 18 20原來從鍵盤輸入并且輸出到文件的程序,只需要增加2行代碼,就能立刻實現(xiàn)從文件輸入并且輸出到文件的功能,反之亦可,是不是So easy呢?!
覺得有幫助的,順便點個贊唄!
總結
以上是生活随笔為你收集整理的Python中用input()和print()体现输入输出重定向的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 归并排序时间复杂度过程分析
- 下一篇: Python嵌套列表解析式(又称列表推导