Я пытаюсь превратить данные .csv в словарь в Python, но я, кажется, получаю дубликаты словарных статей..csv данные в словаре в Python: повторяющиеся значения
Это пример того, что данные .csv выглядит следующим образом:
ticker,1,2,3,4,5,6
XOM,10,15,17,11,13,20
AAPL,12,11,12,13,11,22
Мое намерение состоит в том, чтобы использовать первый столбец в качестве ключа, а остальные столбцы как значения. В идеале у меня должно быть 3 записи: тикер, XOM и AAPL. Но вместо этого я получаю это:
{'ticker': ['1', '2', '3', '4', '5', '6']}
{'ticker': ['1', '2', '3', '4', '5', '6']}
{'XOM': ['10', '15', '17', '11', '13', '20']}
{'ticker': ['1', '2', '3', '4', '5', '6']}
{'XOM': ['10', '15', '17', '11', '13', '20']}
{'AAPL': ['12', '11', '12', '13', '11', '22']}
Так это выглядит, как я получаю строку 1, затем грести 1 & 2, то строка 1, 2 & 3.
Это код, я использую :
def data_pull():
#gets data out of a .csv file
datafile = open("C:\sample.csv")
data = [] #blank list
dict = {} #blank dictionary
for row in datafile:
data.append(row.strip().split(",")) #removes whitespace and commas
for x in data: #organizes data from list into dictionary
k = x[0]
v = x[1:]
dict = {k:v for x in data}
print dict
data_pull()
Я пытаюсь выяснить, почему появляются повторяющиеся записи.
почему это ваш второй цикл внутри первого?Просто не делайте этого, и это будет отлично работать – njzk2
Похоже, что это источник проблемы. Изменение отступов полностью зафиксировало его. Благодаря! – Logic9