文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

教你利用python如何读取txt中的数据

2024-04-02 19:55

关注

前言

当我们在用python时可能会遇到想要把txt文档里的数据读取出来然后进行绘图,那么我们要怎么才能够将txt里的数据读取出来呢?

假设有txt文本如下:

想要把上述文本数据读取出来,可以用以下方法: 

方法一:运用open()函数

该方法使用最基本的open函数进行读取,此处将会把数据读取到一个列表中,这个方法一般就是open打开文件、read读取文件、close关闭文件3个步骤,主要代码如下:

def openreadtxt(file_name):
    data = []
    file = open(file_name,'r')  #打开文件
    file_data = file.readlines() #读取所有行
    for row in file_data:
        tmp_list = row.split(' ') #按‘,'切分每行的数据
        #tmp_list[-1] = tmp_list[-1].replace('\n',',') #去掉换行符
        data.append(tmp_list) #将每行数据插入data中
        return data
 
 
if __name__=="__main__":
    data = openreadtxt('test.txt')
    print(data)

结果如下图,已经成功打印出txt数据,这里默认读取的都是字符串类型,需要的话,可以进行类型转换,int,float都行:

方法二:使用numpy包的loadtxt方法

使用numpy包的loadtxt方法(在处理实验数据中经常用到),numpy是python的一个科学库,至于安装教程参考python中的NumPy,使用loadtxt方法读取txt文件主要代码如下(这里要求的数据必须是数字,不能是字母等字符,不然会报错,因为numpy本身是做计算的,所以读取的数据已经转化为数值类型,非字符串,这种方法在处理实验数据中经常会用到,简单快捷)︰

import numpy as np
 
def loadtxtmethod(filename):
    data = np.loadtxt(filename,dtype=np.float32,delimiter=',')
    return data
 
if __name__=="__main__":
    data = loadtxtmethod('D:\paper reading\基于优胜劣汰模型选择的联邦学习方案\BBOA_ACC.txt')
    print(data)

程序运行截图如下,已经成功打印出txt数据,这里返回的是ndarray类型:

方法三:使用pandas的read_table方法进行读取

首先先安装pandas依赖包:

工具:

anaconda+python环境

步骤一:打开anaconda,如下:

步骤二:进入你要安装的python环境(虚拟环境,默认为base):

命令为: activate+虚拟环境名称

步骤三:安装pandas

命令为:pip install pandas

至此,pandas包安装完成。此外其他python的依赖包也是依照上述方法进行安装 

pandas是python的一个数据处理的包,功能很强大,提供了许多现成的读取各种文件的方法,像csv文件的read_csv方法,excel文件的read_excel方法等,主要代码如下(这里不必要是数值的数据)︰

import pandas
 
def read_tablemethod(filename):
    data = pandas.read_table(filename,header=None,delim_whitespace=True)
    return data
 
if __name__=="__main__":
    data = read_tablemethod('D:\paper reading\基于优胜劣汰模型选择的联邦学习方案\BBOA_ACC.txt')
    print(data)

程序运行结果如下,已经成功打印出数据,这里返回的是DataFrame类型:

总结

到此这篇关于利用python如何读取txt中数据的文章就介绍到这了,更多相关python读取txt的数据内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯