В настоящее время у меня есть файл CSV, который при открытии в Excel имеет в общей сложности 5 столбцов. Только столбцы A и C имеют для меня какое-либо значение, а данные в остальных столбцах несущественны.
Начиная с строки 8 и затем работая в кратных 7 (т.е. строках 8, 15, 22, 29, 36 и т.д.), я ищу для создания словаря с Python 2.7 с информацией из этих полей. Данные в столбце A будут ключом (6-значное целое число), а данные в столбце C являются соответствующим значением для ключа. Я попытался выделить это ниже, но форматирование не лучшее: -
A B C D
1 CDCDCDCD
2 VDDBDDB
3
4
5
6
7 DDEFEEF FEFEFEFE
8 123456 JONES
9
10
11
12
13
14
15 293849 SMITH
В соответствии с вышеизложенным, я хочу извлечь значение из A7 (DDEFEEF) в качестве ключа в моем словаре, а "FEFEFEFEF" - соответствующие данные, а затем добавить еще одну запись в мой словарь, перейдя по строке 15 с помощью "2938495" мой ключ и "Смит" являются соответствующими значениями.
Любые предложения? Исходный файл - это .txt файл с записями с разделителями табуляции. Благодаря
Разъяснение:
Чтобы уточнить, до сих пор я пробовал следующее: -
import csv
mydict = {:}
f = open("myfile", 'rt')
reader = csv.reader(f)
for row in reader:
print row
Вышеприведенное просто распечатывает весь контент, хотя строка за раз. Я попробовал "для строки (7) в читателе", но это вернуло ошибку. Затем я исследовал его и пошел дальше, но он тоже не работал:
import csv
from itertools import islice
entries = csv.reader(open("myfile", 'rb'))
mydict = {'key' : 'value'}
for i in xrange(6):
mydict['i(0)] = 'I(2) # integers representing columns
range = islice(entries,6)
for entry in range:
mydict[entries(0) = entries(2)] # integers representing columns