gpt4 book ai didi

python - 列表追加内存错误

转载 作者:行者123 更新时间:2023-11-28 21:37:52 25 4
gpt4 key购买 nike

我有 .txt文件,每个文件都包含很长的一行,程序停在 b.append(int(j)) 行抛出内存错误。我不明白为什么程序会出现内存错误,因为文件大小为 2.8 MB,而我的 RAM 大小为 28GB。

if __name__=='__main__':
path=raw_input("enter file path:")
image_path=raw_input("enter directory where images are to be stored:")
count = 0
for f in sorted(os.listdir(path)):
print(f)
file = path+'/'+f
b = []
a =[]
ref =[]
alt = []

if (f[:-4] == '0'):
print('cb1')
ch = open(file,'r')
for i in ch:
b += i.split()
for j in b:
b.append(int(j))
count+=1
print('cb2')

elif (f[:-4] == '1'):
po = open(file,'r')
for i in po:
a += i.split()
for j in a:
a.append(int(j))
count+=1

elif (f[:-4] == '3'):
re = open(file,'r')
for i in re:
ref += i.split()
count+=1

elif (f[:-4] == '4'):
al = open(file,'r')
for i in al:
alt += i.split()
count+=1
if (count == 4):
break


cnt = 0
for f in sorted(os.listdir(path)):
print(f)
file = path+'/'+f
cnt += 1
if cnt>4:
process(path+'/'+f, image_path , f)

ch.close()
po.close()
re.close()
al.close()

我在具有 28 GB RAM 的 ubuntu 16.04 上使用 python 2.7 64 位。 0.txt 可以从 here 下载

最佳答案

你有:

for j in b:
b.append(int(j))

您正在将项目附加到 b在迭代它时。这样,您的列表就会无限增长。

你可能想做一些类似 b = [int(j) for j in b] 的事情。反而。

关于python - 列表追加内存错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48855415/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com