Во-первых, я хочу сказать, что я новичок в программировании. Тем не менее, используя Python 2.76, я пытаюсь взять текстовый файл, прочитать его с помощью csv, а затем создать словарь с ключом, равным первому столбцу в файле. Ниже приведен пример типа файла, который я хочу использовать (извините за плохое форматирование, есть три столбца, каждый из которых с заданным значением либо visitid, дата или время):Добавление ввода из файла csv в словарь, включая повторяющиеся значения для уникального ключа
visitid CDate CTIME
OMHioJh8XEeq7152 6/15/2007 06:00
OMHioJh8XEeq7152 6/14/2007 07:10
OMHioJh8XEeq7152 6/11/2007 14:21
t2v0TjgroLTI6118 4/28/2006 14: 18
t2v0TjgroLTI6118 5/1/2006 04:00
В частности, с учетом такого рода список, я хочу, чтобы сделать ключ в словаре, равным значению первого столбца, а для значения не имеют остальные столбцы в виде списка. Наконец, я хочу добавить значение в другой список, если есть дубликаты значения в столбце 1, чтобы сформировать список списков, так сказать. Это то, что я до сих пор, после выполнения некоторых исследований здесь и в других местах:
def test_results(filename):
import csv
with open(filename,"rU") as f:
reader = csv.reader(f,delimiter="\t")
result = {}
for row in reader:
key = row[0]
if key in result:
result[row[0]].append(row[1])
else:
result[row[0]] = key
result[key]=row[1:]
print result
Это работает, но это не добавляет ценности, чтобы сделать список списков, а только добавляет к словарю последней строки для любого уникального посещенияID.
Спасибо!
вы уверены, что вы не получаете n ошибка относительно объектов str, не имеющих метода добавления? – geoffspear
Сначала у меня была ошибка, но после того, как я изменил несколько вещей, по какой-то причине это больше не дает мне этой ошибки. – MimiMoraine