教你利用python如何读取txt中的数据
作者:沉睡中的主角 发布时间:2023-04-03 14:52:36
前言
当我们在用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类型:
来源:https://blog.csdn.net/ggj0727/article/details/120605935


猜你喜欢
- 方法一、简单安装(通过yum)1.安装epel-releaserpm -ivh http://dl.fedoraproject.
- 在使用爬虫爬取别的网站的数据的时候,如果爬取频次过快,或者因为一些别的原因,被对方网站识别出爬虫后,自己的IP地址就面临着被封杀的风险。一旦
- 源自MySQL 5.7 官方手册 手册地址一、SELECT…INTO介绍SELECT…INTO用
- 背景需要遍历结构体的所有field对于exported的field, 动态set这个field的value对于unexported的fiel
- 项目编写过程中,总能遇见对字典进行排序什么的,如果要实现多条件排序只需要下面几行代码实现。充分体现了python的好处了。teamitems
- 这几天转了几个内容包含日语的贴,结果发现搜索数据库时出现“内存溢出”错误。上网搜索寻求答案未果。最后才发现这就是传说中的“日文 26 个片假
- 一、文件的打开和创建>>> f = open('/tmp/test.txt')>>> f
- <%@ Page Language="C#" AutoEventWireup="true" C
- 前言order by满足两种情况,会使用 index 方式排序:order by语句使用索引最左前列(最左匹配法则)where子句和orde
- (本篇部分代码综合整理自B站,B站有手把手说明的教程)1.网易云非付费内容爬取器(声明:由于技术十分简单,未到触犯软件使用规则的程度)驱动E
- 缓动,学名为Tween,缓冲移动的简称。要想页面内容切换起来舒服,就使用淡入淡出特效,要想让页面元素动起来自然,就要使用缓动效果。这两个混合
- 用命令创建Django项目1.将磁盘切换为D盘2.在D盘的路径下创建Django项目创建项目应用3.最后显示新建index文件夹启动项目1.
- “小程序”破解IDE + Demo:https://github.com/gavinkwoe/weapp-ide-crack.git资源汇总
- 今天写了个小功能,看起来挺简单,写的过程中发现了些坑。1.div没有disabled的属性,所以得写成button2.disabled在da
- dispy,是用asyncoro实现的分布式并行计算框架。框架也是非常精简,只有4个组件,在其源码文件夹下可以找到:dispy.py (cl
- python 字典(dict)的特点就是无序的,按照键(key)来提取相应值(value),如果我们需要字典按值排序的话,那可以用下面的方法
- Django中每一个模型model都对应于数据库中的一张表,每个模型中的字段都对应于数据库表的列。方便的是,django可以自动生成这些cr
- 比如:,master,test, 表示 该用户为 test 的下级代码,test登录后可以看到 test名下的业务和所有下级代理的业务。相关
- 目标打包Python selenium 自动化脚本(如下run.py文件)为exe执行文件,使之可以直接在未安装python环境的windo
- 问题描述:已有的model,修改之后,想重新建模,于是将migrations文件夹中除__init__.py之外其他文件都删掉,再次执行以下