m0_59203201 2023-03-31 16:29 采纳率: 100%
浏览 39
已结题

python txt内容批量处理

img


一共20万行,将i*20+16 17 18 19这4万行修改为五个0,间隔三个空格

  • 写回答

3条回答 默认 最新

  • a5156520 2023-03-31 19:21
    关注

    可以读取数据文件所有行后,再循环遍历每一行,当是指定行数数据时,则用5个0来代替,其他行正常复制。

    下面的代码,先产生了20万行的测试数据文件,然后再读取这个文件内容,把指定行数的数据用5个0代替,其他行正常复制,都写入到另一个文件。

    测试代码如下:

    参考链接:





    
    
    import random
    
    # https://blog.csdn.net/qq_44732742/article/details/124506009
    #  第一部分,  用于产生20万行的测试数据,如果已经有数据,则可以去除此部分代码
    with open("datas0331.txt","w") as file:
        
        for j in range(200000):
            for i in range(5):
                # https://blog.csdn.net/m0_72893325/article/details/129533250
                # https://www.zhangshilong.cn/work/232672.html
                data = round(random.uniform(100,65536),2)
                file.write(str(data))
                if i< 4:
                    file.write("   ")
                if i==4 and j!=199999:
                    file.write("\n")
    
    # 第二部分,执行数据文件替换,然后把数据写入另一个文件,如果已经有数据文件,只需要部分代码
    # https://www.ycpai.cn/python/TkKfBw67.html
    resultFile= open("datas0331Result.txt","w")# 把修改后的数据写入另一个文件
    
    i=1  # 从第一行开始   
    with open("datas0331.txt","r") as readFile: # 打开测试数据文件,读取数据
    
        # https://blog.csdn.net/i1024i/article/details/129519066
        for line in readFile.readlines(): # 遍历测试文件的每一行
             # 当是指定行数的数据时,用5个0来代替这一行
            if ((i-16)%20==0 or  (i-17)%20==0 or (i-18)%20==0 or (i-19)%20==0 )and i>=36:
                resultFile.write("0   0   0   0   0\n")   
            else: # 其他行原样复制
                resultFile.write(line)
            i=i+1 
           
    resultFile.close()        
          
    
    

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 4月13日
  • 已采纳回答 4月5日
  • 创建了问题 3月31日

悬赏问题

  • ¥15 有偿求跨组件数据流路径图
  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值
  • ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
  • ¥15 CSAPPattacklab
  • ¥15 一直显示正在等待HID—ISP
  • ¥15 Python turtle 画图
  • ¥15 关于大棚监测的pcb板设计
  • ¥15 stm32开发clion时遇到的编译问题
  • ¥15 lna设计 源简并电感型共源放大器
  • ¥15 如何用Labview在myRIO上做LCD显示?(语言-开发语言)