Напишите функцию с именем «read_prices», которая принимает один параметр, представляющий собой список символов тикера, которыми ваша компания владеет в своем портфеле.Вы должны прочитать файл CSV для каждого из этих тикеров, который содержит цену каждой акции в течение года и вернуть эти цены в одном словаре.Возвращаемый словарь будет содержать символы тикера в качестве ключей и словари в качестве значений, где внутренние словари будут иметь даты в качестве ключей (в виде строк в формате "YYYY-MM-DD") и цены в качестве значений в виде чисел с плавающей запятой.Все сказали, что этот словарь будет содержать цену на любую акцию на любую дату за прошедший год.Вы можете предположить, что для каждого символа тикера в списке ввода будут файлы с именем «.csv».Например, если «TXN» находится в списке тикеров, тогда файл с именем «TXN.csv» будет находиться в том же каталоге, что и ваш код во время тестирования, и каждая строка этого CSV-файла будет иметь формат «дата, цена, объем».«где дата в формате ГГГГ-ММ-ДД, цена - это число с плавающей запятой, а объем - это целое число, представляющее количество акций, которые были проданы в этот день всеми трейдерами (вам не понадобится объем торговли для этой прелабы),
Пример строки для запаса AAPL: "2015-10-20,112.673677,48967800"
import csv
def read_prices(ticker):
with open(ticker) as f:
reader = csv.reader(f)
dict = {}
for items in reader:
if items[0] in dict:
dict[items[0]] += float(items[1]) * int(items[2])
else:
dict[items[0]] = float(items[1]) * int(items[2])
return dict
Я получаю ошибку на входе [['AAPL', 'GOOG', 'FB']].Как бы я решил эту проблему?