Python对txt进行读写操作

举报
代码的路 发表于 2023/01/11 15:16:09 2023/01/11
【摘要】 原文链接 全文件读写读操作使用pandas.read_csv,写操作使用data.to_csv。import numpyimport pandas as pd#读data = pd.read_csv(r"/home/snowstorm/mmdetection/data/groundtruth.txt", header=None) #读取TXT:逗号分隔#data = pd.read_csv(...

原文链接

全文件读写

读操作使用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('\n')
        temp2 = temp1.split('\t')
        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("\n")
        
    
infile = 'C:\\Users\\snow\\Desktop\\positive.txt'   #要读取的文件
k = 1        #列数
posit_data = loadDatadet(infile,k)
Writedata(posit_data)

print(posit_data)

学习更多编程知识,请关注我的公众号:

代码的路

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。