python去掉txt文件行尾换行

枫铃3年前 (2021-09-30)Python215

误区

  • 使用python对txt文件进行读取使用的语句是open(filename, ‘r’)
  • 使用python对txt文件进行写入使用的语句是open(fileneme, ‘w’)
  • 所以如果 要通过python对原始文件读取后,直接进行重新写入到原始文件 , 即读到原始文件中有"\n"或"\r\n" 的地方,然后直接删除字符这是不现实的。应该是先通过 open(filename, ‘r’) 读取原始文件内容,再使用open(fileneme, ‘w’) 将删除了行尾回车符的字符串写入到新的文件中。 即要做 读写分离 。

实例

对于原始文件
在这里插入图片描述
使用以下语句只是对读出的内容删除了行尾的换行符,而不是真正将修改的结果写入到原始的文件中。

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:778463939
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
filename = "./text.txt"
with open(filename, 'r') as f:
    print("open OK")
    for line in f.readlines():
        for a in line:
            # print(a)
            if a == '\n':
                print("This is \\n")
                a = " "
    for line in f.readlines():
        for a in line:
            if a == '\n':
                print("This is \\r\\n")
    for line in f.readlines():
        line = line.replace("\n", " ")
        line = line.strip("\n")

"""open OK
This is \n
This is \n
This is \n
This is \n
This is \n
This is \n
This is \n
This is \n
This is \n
This is \n
This is \n
This is \n
This is \n
This is \n
This is \n
This is \n
"""

但是原始文件并没有被修改

正确做法

将文件中的读取后,使用写语句将修改后的内容重新写入新的文件中

with open('./text_1.txt', 'w') as f:
    with open('./text.txt', 'r') as fp:
        for line in fp:
            line = str(line).replace("\n", " ")
            f.write(line)

在这里插入图片描述

相关文章

利用python同步windows和linux文件

写python脚本的初衷,每次在windows编辑完文件后,想同步到linux上去,只能够登录服务器,...

爬虫基本原理

爬虫基本原理 一、爬虫是什么? 百度百科和维基百科对网络爬虫的定义:简单来说爬虫就是抓取目标网站内容的工具,一般是根据定义的行...

Django 函数和方法的区别

函数和方法的区别 1、函数要手动传self,方法不用传 2、如果是一个函数,用类名去调用,如果是一个方法...

Django 知识补漏单例模式

单例模式:(说白了就是)创建一个类的实例。在 Python 中,我们可以用多种方法来实现单例模式&#x...

Django基础知识MTV

Django简介 Django是使用Python编写的一个开源Web框架。可以用它来快速搭建一个高性能的网站。 Django也是一个MVC框架。但是在Dj...

Python mysql 索引原理与慢查询优化

一 介绍 为何要有索引? 一般的应用系统,读写比例在10:1左右,而且插入操作和一般的更新操作很少出现性能问题,...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。