import time
nums=[]
start = time.time()
with open('111.txt') as f:
for line in f:
# a=[int(i) for i in line.split()]可换为这个。方法一
a=(float(i) for i in line.split())#float可以换成int,但是速度float更快一点。方法二
nums+=a
#另一种读取方式,速度更慢点。方法三
#l = open("111.txt").read().split()
#n=len(l)
#
#for i in xrange(n):
# l[i] = int(l[i])
#对27M的数据文件测试:第一种方法7秒多,第二种方法6秒多,第三种8秒多,第二种换成float后为4秒多,不知道什么原因
aa=time.time()-start
print 'ok' , aa
数据文件:
生成数据后可以直接用 numpy 对数据进行处理
例如:
import numpy
sss=numpy.asarray(nums,dtype=float)
当然还有更快的方式:
import numpy
import time
nums=[]
start = time.time()
with open('111.txt') as f:
for line in f:
a=line.split()
nums+=a
sss=numpy.asarray(nums,dtype=float)
aa=time.time()-start
print 'ok' , aa#print的输出为:ok 2.89900016785