Python读取TXT文件并转换为NumPy数组的两种方法

程一诺
程一诺
发布时间:2026-10-13 | 2人浏览过
原创

本文介绍在Python中将TXT文件数据读取并转换为NumPy数组或列表的方法。针对包含混合数据的TXT文件,提供逐行处理并转为数组的代码示例;针对纯数字文件,推荐loadtxt直接读取。同时详细解析split和strip函数的语法、参数及实际应用案例,帮助开发者高效处理文本数据。

在实际应用场景中,大量数据通常以txt或csv等文本格式存储,但在程序进行后续处理时,使用numpy数组或列表往往更加便捷。本文简要介绍如何读取txt文件,并将其转换为numpy数组或列表的具体方法。

1 将txt文件读取为列表并转换为numpy数组

import numpy as np
 
file = open('filename.txt')
val_list = file.readlines() 
lists =[]
for string in val_list:
 string = string.split('\t',3)
lists.append(string[0:2]) #只取每个string的前两项,得到的lists即为所要的列表
a = np.array(lists) #将列表转化为numpy数组,
a= a.astype(int) #并设定类型为intfile.close()

虽然这种方法代码量稍多,但它具有更高的灵活性,允许txt文件中每一行同时包含数字项和字母项。如果你的txt文件中每一行的每一项均为数字,则存在一种更简单的处理方式:

a = numpy.loadtxt('filename.txt')

通过这种方式可以直接获得一个全为数字的numpy数组。

2 split等函数的简介

split函数通过指定的分隔符对字符串进行分割,如果参数num有值,则表示将字符串分割为num个子字符串。其语法格式为:string.split(str = " " , num = x ),其中str为分隔符,默认为所有空字符(如空格、换行符、制表符等);num指定子字符串的个数。该函数返回分割后的字符串列表。示例如下文中:

string = string.split('\t',3)

表示以\t作为分隔符,将字符串分割为3个部分。除了常用的split函数外,还有一个功能相关的常用函数strip(),它用于移除字符串头部和尾部指定的字符。其语法格式为:string.strip([char]),其中char为

需要移除的指定字符,默认为空格。该函数返回移除后的新字符串。示例如下:

str = "000111aaabbb111000"
print str.strip('0')

输出结果为:

111aaabbb111

以上关于Python读取TXT等文件数据并转换为NumPy数组的方法分享完毕,希望能为大家提供参考,也希望大家多多支持本站。

相关标签:

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表