У меня есть файл с более чем 600 000 записей. В основном он содержит:Создайте список из очень большого количества записей
user1 choice1
user1 choice2
user2 choice3
user2 choice1
.
.
.
.
user400000 choice60
Когда я пытаюсь создать словарь по обычным методам (показано ниже), простоя перестает отвечать.
d = {}
with open("file.txt") as f:
for line in f:
(key, val) = line.split()
d[key] = val
Я хочу легко и быстро манипулировать списком/словарем из этого большого файла записей. Что было бы самым эффективным способом получить это?
Это должно работать, считая, что все типы правильные. Возможно, вы печатаете 'd' - что вы не показывали - потом? Это может заблокировать IDLE. Попробуйте 'print len (d)' после этого цикла. – DSM
Вы хотите манипулировать каким образом? Проблема в том, что вы пытаетесь сохранить «большой файл» в переменной. Было бы лучше, если бы вы могли манипулировать одной строкой за раз, а не хранить ее. Но это может оказаться невыполнимым. – cmd
@bernie: Черт, вы видели это быстрее: D –