在利用readline()進行逐行讀取檔案的時候,我們一般使用以下程式:
f=open("wenjian","r") while True: fa=f.readline() if fa == '': break print(fa) f.close()
這個程式的if陳述句fa == ''后面這個單引號里是沒有blank space,也就是沒有空格的,因為這里表示的是如果檔案讀取一直讀到沒有空間了,則停止這個回圈,如果這個引號里有空間的話,那么一旦遇到有空格的地方,檔案的讀取就會停止,這是我們不想要的,我們想要的是逐行進行讀取,
我們用于測驗用的檔案檔案名為"wenjian",因為我是在linux下創建的這個檔案因此不需要在后面加上txt的后綴,win下則需要加上后綴,這個檔案里的資料如下:

可見,每一行當中既有字母也有數字,且字母和數字用一個空格分隔開,如果用剛才的這個程式進行逐行讀取的話,輸出如下:

我們的輸出果然是每輸出一行,就會空一行,這讓本想要進行逐行輸出的我感到十分困惑,我們該如何解決這個辦法呢?也就是在輸出的print()函式后,加入一個end=""的引數就可以避免這個問題,進行不空行的輸出了,加入引數后的程式如下;
f=open("wenjian","r") while True: fa=f.readline() if fa=="": break print(fa,end="") f.close()
最后輸出的結果是:

這樣我們就可以看到這個輸出結果和檔案里的資料一模一樣啦!每一行之間是沒有空行的
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/162485.html
標籤:Python
上一篇:實體013:所有水仙花數
下一篇:Python檔案逐行寫入
