Python 的open(filename,'r').readlines() 方法提供檔案中的行列表,但每個元素包括換行符號。要檢索不帶這些字元的數據,可以使用多種方法。
一種方法是讀取整個檔案並使用 str.splitlines 分割行:
temp = file.read().splitlines()
或者,您可以從每行中移除換行符手動:
temp = [line[:-1] for line in file]
注意:此方法假設檔案以換行符號結尾;否則,最後一行將會遺失一個字元。
要避免此問題,如果缺少換行符,您可以將換行符附加到檔案結尾:
with open(the_file, 'r+') as f: f.seek(-1, 2) if f.read(1) != '\n': f.write('\n') f.flush() f.seek(0) lines = [line[:-1] for line in f]
或者,更簡潔地,去掉換行符:
[line.rstrip('\n') for line in file]
readlines 方法有效地模擬了以下程式碼:
def readlines(self): lines = [] for line in iter(self.readline, ''): lines.append(line) return lines
因此,readlines() 也保留了 readline() 讀取的換行符。
以上是如何在Python中讀取沒有換行符號的檔案?的詳細內容。更多資訊請關注PHP中文網其他相關文章!