读取一个文件的python时间随着文件夹

时间:2017-02-25 10:46:38

标签: python performance

我的python脚本假设要执行以下操作:

1)计算文件夹中的文件"输出"这是在0.0秒内完成的

2)只读取第一个名为n0.dat的文件并从中创建一个空列表

import os, csv

icoords, jcoords, kcoords = set(),set(),set()
rowLen = 10 

nMax = len([file for file in os.listdir('output') if file.endswith('.dat')])
print(nMax)

with open('output/n0.dat', newline='') as csvfile:
print ('opened')
    myReader = csv.reader(csvfile, delimiter=' ') 
    for row in myReader:
        if len(row) == rowLen:
            icoords.add(int(row[0])) 
            jcoords.add(int(row[1])) 
            kcoords.add(int(row[2])) 
    iMin, jMin, kMin, iMax, jMax, kMax = min(icoords), min(jcoords), min(kcoords), max(icoords)+1, max(jcoords)+1, max(kcoords)+1
    cV = [[[[[] for n in range(nMax)] for k in range(kMax)] for j in range(jMax)] for i in range(iMax)]

问题是:如果文件夹中只有一个文件,则只需2秒即可完成程序;如果我有20个文件则需要15秒,如果我有60个文件,则会出现内存错误。

为什么呢? python是否存储了计算机存储器中的所有文件?

顺便说一下。每个文件都是4.51 MB,并且它们在不同的运行中没有更改。

先谢谢你帮助我:)。

0 个答案:

没有答案