把txt文件里的数字转换成array数组,首先得需要了解一下这两个函数:
- data.strip()
这个函数用来删除data开头和结尾指定的字符串,比如:
>>> string = "000012304560000"
>>> string.strip('0')
>>> print(string)
>"1230456"
- data.split()
a = '0nnabcnnabnna'
print(a.split('nn'))
得到的结果是
[‘0’,‘abc’,‘ab’,‘a’]
可以看出split函数是把字符串按照要求进行分割,分割之后得到的是一个字符串列表.
其中,split还可以按照要求分割,
str.split(str="", num=string.count(str)),num表示分割的次数
a = '0nnabcnnabnna'
print(a.split('nn',1))
结果是
[‘0’,‘abcnnabnna’]
以下为将数据txt文本转换成数组array形式的代码:
import numpy as np
txt_path = 'F:\data.txt' # txt文本路径
f = open(txt_path)
data_lists = f.readlines() #读出的是str类型
dataset= []
# 对每一行作循环
for data in data_lists:
data1 = data.strip('\n') # 去掉开头和结尾的换行符
data2 = data1.split('\t') # 把tab作为间隔符
dataset.append(data2) # 把这一行的结果作为元素加入列表dataset
dataset = np.array(dataset)
print(dataset)