оптимизация кода python (циклы)
Я только начал изучать программирование и нейронные сети. вот пишу первую программу. И, может быть, кто подскажет как оптимизировать код, возможно циклы короче сделать.
import requests
import json
import time
from alpha_vantage.timeseries import TimeSeries
from datetime import datetime
# Ввод ключа доступа
#key = input('Введите ключ доступа - ') # 'IQLCQLXYBPW3LH7T'
ts = TimeSeries(key='IQLCQLXYBPW3LH7T')
symbolCode = []
with open('CompaniesList.txt') as f:
listTitleCompany = f.read()
symbolCode = listTitleCompany.split(" ")
print(symbolCode)
# Create Dictinary
countCompany = len(symbolCode)
stockQuotes = {}
lengthDateBase = []
sleepFor = 0
for i in range (countCompany):
sleepFor += 1
if sleepFor % 5 == 0:
time.sleep(61)
# Запрос данных API
data, meta_data = ts.get_intraday(symbol=symbolCode[i],interval='60min', outputsize='full')
# Запись нужных параметров в массив
times = []
prices = []
for key, price in data.items():
# timeD = datetime.strptime(key, "%Y-%m-%d %H:%M:%S")
timeD = key
times.append(timeD)
prices.append(price['1. open'])
lengthDateBase.append(len(times))
timesPrices = [times, prices]
# Создание словаря
stockQuotes[symbolCode[i]] = timesPrices
# print(stockQuotes)
print(stockQuotes)
print(symbolCode)
print(max(lengthDateBase))
print(len(symbolCode))
# Корректирование длины списков
for i in range (len(lengthDateBase)):
if lengthDateBase[i] != max(lengthDateBase):
stockQuotes.pop(symbolCode[i])
symbolCodeNew = []
for key, price in stockQuotes.items():
scn = key
symbolCodeNew.append(scn)
print(symbolCodeNew)
print(len(symbolCodeNew))
# Перегруппировка данных
pdStockQuotes = []
for key, timePrice in stockQuotes.items():
times = timePrice[0]
prices = timePrice[1]
for i in range (len(times)):
pdStockQuotes.append([key, times[i], prices[i]])
# Запись в файл JSON
with open('TimeSeries.json', 'w') as f:
f.write(json.dumps(stockQuotes))
with open('TimeSeriesPD.json', 'w') as f:
f.write(json.dumps(pdStockQuotes))