получить ошибку рекурсии в большом количестве итераций и доступ к элементу соединения 2 списков итеративно Python - PullRequest
0 голосов
/ 06 июля 2018

Мне нужно сделать итеративно (около 3 миллионов раз) X=[X B], что B=[b1,b2,b3,b4,b5], и сохранить это в файле для доступа в будущем.

Я сталкиваюсь с двумя проблемами:

1- Первая проблема заключается в том, что размер X равен size=(2,), и я не знаю, как получить доступ к разным элементам (т. Е. b1..b5 каждый раз), поскольку все они должны быть равны нулю каждого раза! Для решения этой проблемы я попытался использовать X.append(B), но увидел ошибку. Я пытался использовать X.append(B[0])...X.append(B[4]), но проблема не была решена! Как я могу это сделать?

2- Во-вторых, я использую np.save('Xsaved.npy',X), но когда вижу

    `np.save('Xsaved.npy',X)
File "C:\Users\L\Anaconda3\envs\tensorflow\lib\site-packages\numpy\lib\npyio.py", line 509, in save
    pickle_kwargs=pickle_kwargs)
  File "C:\Users\L\Anaconda3\envs\tensorflow\lib\site-packages\numpy\lib\format.py", line 576, in write_array
    pickle.dump(array, fp, protocol=2, **pickle_kwargs)
RecursionError: maximum recursion depth exceeded while pickling an object

когда Время больше 450! однако мне нужно повторить это около 2,5 миллионов раз. Я хотел бы знать, как я мог решить эти две проблемы!

p.s. Я пишу псевдокод, чтобы увидеть, что я сделал!

episodes=40000
T=3000000
for e in range(episodes):

    REWARDALLkol.append(REWARDALL)
    REWARDALL=[]

    X=[]

    for time_t in range(1,T+1):

        B= functioncalculatedB() #B=[b0,b1,b2,b3,b4]
        X=[X, B]

np.save('./save/X.npy',X)
...