python 对TXT文档的操作记录

一、读取txt的每一行且修改行中指定的内容

import os
import cv2



def get_files(path):
    """ 获取指定路径下所有文件名称 """
    files = []
    for filename in os.listdir(path):
        if os.path.isfile(os.path.join(path, filename)):
            files.append(filename)
    return files


def split_to_name_ext(image_name_ext):
    name, ext = os.path.splitext(image_name_ext)
    return name, ext


def gen_empty_txt(txt_path):
    with open(txt_path, "w") as f:
        pass


labels_txt_path='F:/yolov5_train1_8/labels2/'
save_path='F:/yolov5_train1_8/lable_fix/'
txt_path='F:/yolov5_train1_8/lable/Image_20240628141820123.txt'


labels_file = get_files(labels_txt_path)

for label in labels_file:
    name, ext = split_to_name_ext(label)
    print(label)

    if ext not in ['.txt']:
        continue
   
    label_path=labels_txt_path+label
    print(label_path)
    save_path_new=save_path+label
    print(save_path_new)
    file_write = open(save_path_new, "w")


    # with open(label_path, 'r') as file:
    #     first_line = file.readline()
    #     print(first_line)


    with open(label_path, 'r') as file:
        for line in file:
            print(line.strip())  
            words = line.split()
            print(words)
            if(len(words)>1):
                # if(words[0]=="1"):
                #     # print(words[0])
                #     words[0]=2
                if(words[0]=="2"):
                    # print(words[0])
                    words[0]=0
                print(words)
                print(type(words))
                hh=" "
                nnn=map(str,words)
                result =hh.join(nnn)
                # print(result)
                file_write.writelines(result)
                file_write.writelines("\n")

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值