原标题:在Python中,如何去除行末的换行符?

在python中读取文件时,如何去除行末的换行符?以及在Windows与Linux中的区别?

一、去除换行符

以使用readline进行读取为例:

import re

data =[]

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

line = f.readline() # 读取一行文件,包括换行符

# liine = 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.1 windows

在window中,只要按照上面的代码即可去除换行符,即“\n”会直接被去掉,如下:

没有去掉换行符时:

e97966ee15b847bb8b6cc7b1053d3825.png

去掉换行符后:

115a42f720da46c59c8a5dd336a1dd06.png

2.2.Linux

在Linux中,若直接去掉换行符(方法1与方法2),“\n”不会直接被去掉,而是会被‘\r’(回车符)代替,如下:

5a8659aa58b746a3827d96e741b17848.png

当然此时若再使用 strip() 也可以将 ‘\r’ 去除。

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

75f57257c74244fa8ec279a2fff002e5.png

所以建议使用方法3去除换行符。返回搜狐,查看更多

责任编辑:

GitHub 加速计划 / li / linux-dash
13
2
下载
A beautiful web dashboard for Linux
最近提交(Master分支:4 个月前 )
186a802e added ecosystem file for PM2 5 年前
5def40a3 Add host customization support for the NodeJS version 5 年前
Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐