Python对txt进行读写操作

电子说

1.3w人已加入

描述

全文件读写

读操作使用pandas.read_csv,写操作使用data.to_csv

import numpy
import pandas as pd

#读
data = pd.read_csv(r"/home/snowstorm/mmdetection/data/groundtruth.txt", header=None) #读取TXT:逗号分隔
#data = pd.read_csv(r"/home/snowstorm/mmdetection/data/groundtruth.txt", header=None, sep=' ') #读取TXT:空格分隔
print(data)

#写
data.to_csv("/home/snowstorm/mmdetection/data/write.txt",sep=',',header=False,index=False)

指定行列读写

import numpy

#读数据
def loadDatadet(infile,k):
    f = open(infile,'r')
    sourceInLine = f.readlines()
    dataset = []
    for line in sourceInLine:    #读数据
        temp1 = line.strip('
')
        temp2 = temp1.split('	')
        dataset.append(temp2)
        
    for i in range(0,len(dataset)):   #转为整数
        for j in range(k):
            dataset[i].append(int(dataset[i][j]))
        del(dataset[i][0:k])
        list = sum(dataset,[])        #变成一维数组
        posit_data = numpy.array(list).reshape(len(list)//4,4) #变为n*4的二维数组
    return posit_data


#写数据
def Writedata(negat_data):
    filename = 'C:\\Users\\DZF\\Desktop\\negative.txt'  #要写入的文件
    row = numpy.array(negat_data).shape[0]   #获取行数n
    with open(filename,'w') as f: # 若filename不存在会自动创建,写之前会清空文件
        for i in range(0,row):
            f.write(str(negat_data[i][0:12]))
            f.write("
")
        
    
infile = 'C:\\Users\\snow\\Desktop\\positive.txt'   #要读取的文件
k = 1        #列数
posit_data = loadDatadet(infile,k)
Writedata(posit_data)

print(posit_data)

  审核编辑:汤梓红

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分