Редактировать : Только что увидел ваше замечание о запятых ниже. Приведенный ниже подход является быстрым, когда дело доходит до чтения файла, но он основан на разделителях, и в вашем случае он потерпит неудачу. Однако в других случаях это полезно.
Если вы хотите быстро прочитать файл, вы можете использовать специальный модуль, например, почти стандартный Numpy :
data = numpy.loadtxt('file_name.txt', dtype=('S10', 'S8'), delimiter=',') # dtype must be adapted to your column sizes
loadtxt()
также позволяет обрабатывать поля на лету (с аргументом converters
). Numpy также позволяет вам давать имена столбцам (см. doc ), так что вы можете сделать:
data['name'][42] # Name # 42
Полученная структура похожа на массив Excel; по сравнению со словарем оно весьма эффективно по памяти.
Если вам действительно нужно использовать словарь, вы можете использовать выделенный цикл над массивом data
, быстро читаемый Numpy, способом, аналогичным тому, что вы сделали.