Python读取TXT数据的三种实用方法:原生、NumPy与Pandas

一颗松果
一颗松果
发布时间:2026-10-15| 5人浏览过
原创

本文详细介绍在Python中读取TXT数据的三种主流方法。首先演示使用内置open函数进行基础读取与列表转换;其次讲解利用NumPy的loadtxt方法处理纯数值型实验数据,强调其返回ndarray类型的特性;最后介绍通过Pandas的read_table方法处理更复杂的文本格式,返回DataFrame对象。内容涵盖环境配置、代码示例及结果分析,适用于不同场景下的数据读取需求。

前言

在进行Python开发时,经常需要将TXT文档中的数据提取出来以便进行后续绘图或分析。那么,如何高效地将TXT文件中的数据读取到程序中呢?

假设存在如下格式的TXT文本文件:

若要读取上述文本数据,可采用以下几种常用方法:

方法一:利用open()函数

该方法基于Python最基础的open函数实现读取。其核心流程通常包含三个步骤:使用open打开文件、调用read或readlines读取内容、最后使用close关闭文件。主要实现代码如下:

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是Python中强大的科学计算库,其提供的loadtxt方法在处理实验数据时尤为常用。关于NumPy的安装,可参考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数据的相关内容,建议搜索本站历史文章或继续浏览后续相关文章,希望大家今后多多支持本站!

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。