python 实现删除文本中,行长度小于某个值的行

例如我们有这样的文本(举例自己造,原本是爬虫时中的json是只有一行,爬出来里面夹杂了一些只有几个字符的行),想要删除那些短行!

 


import os
path = r'E:\m'
def Cleaning_txt(path):
    rootdir = path
    for root, dirnames, filenames in os.walk(rootdir):
        j = 1
        for name in sorted(filenames):
            path_ = os.path.join(root, name)  ###获得文件地址
            with open(path_, 'r', encoding='utf-8-sig') as file:
                datan = []###造一个空列表来放长度大于10的字符串
                data = file.read()
                data1 = data.splitlines()
                for line in data1:
                    if len(line)>10:###设定大于10的取出保存
                        datan.append(line)

                sep = '\n'
                strdata=sep.join(datan)######字符串用换行符拼接
                print(strdata)
                f = open(r'E:n\a.txt', 'a', encoding='utf-8-sig')
                f.write(strdata)
                f.close()
                j += 1


Cleaning_txt(path)

 sep = ''里为空

 就变成了一整行

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值