1. 程式人生 > >在python中讀取檔案時如何去除行末的換行符以及在Windows與Linux中的區別

在python中讀取檔案時如何去除行末的換行符以及在Windows與Linux中的區別

【時間】2018.11.14

【題目】在python中讀取檔案時如何去除行末的換行符以及在Windows與Linux中的區別

 

一、去除換行符

以使用readline進行讀取為例:

import re

data =[]

f = open("data.txt", "r")

line = f.readline() # 讀取一行檔案,包括換行符

# line = line[:-1]  # 去掉換行符(方法1)

#line = re.sub('\n','',line) #方法2

line = line.strip() #方法3

data.append(line)

while line:  # 直到讀取完檔案

    line = f.readline()

    # line = line[:-1]

    #line = re.sub('\n','',line)

    line = line.strip() 

    if line != '':

     data.append(line)

f.close()

print(data)

 

二、在Windows與Linux中的區別

2.1windows

在window中,只要按照上面的程式碼即可去除換行符,即“\n”會直接被去掉,如下:

沒有去掉換行符時:

去掉換行符後:

2.2.Linux

在Linux中,若直接去掉換行符(方法1與方法2),“\n”不會直接被去掉,而是會被‘\t’代替,如下:

當然此時若再使用strip()也可以將‘\t’去除。

如果使用方法3,即用strip(),則可以去除:

所以建議使用方法3去除換行符。