Изменение: Извините за путаницу всех. Первая версия этого вопроса настолько запутанна, что я решил удалить ее.
Вот мой вопрос снова.
Как перевести список из 10 000 имен учеников (текстовый файл) в список, который можно повторить?
Я изначально сказал словарь, но я действительно имел в виду список, извиняюсь.
Предполагая, что каждое имя ученика находится на собственной линии, что и кажется, это так же просто, как
students = open('list-of-students.txt').readlines()
что позволит students
быть list
всех студентов в файле.
list(open('list-of-students.txt'))
также работает. Это вряд ли становится легче, чем это :) Я бы предпочел использовать блок with, чтобы открыть файл.
Это сильно зависит от того, что вы хотите сделать.
Но что-то вроде этого должно работать:
with file("filename-with-students.txt") as f:
for line in f:
## now, the name "line" refers to a string containing a line in your file
Первая строка, with file(...) as f
, открывает файл и присваивает "файловому дескриптору" имя f
. Использование оператора with
означает, что он будет автоматически закрыт, когда вы закончите.
Вторая строка, for line in f
, использует преимущество, заключающееся в том, что вы можете перебирать файлы по одной строке за раз. Следовательно, вы можете делать все, что хотите, для строки, на которую ссылается line
.
list(f)
. Но это не нужно для итерации :)
dictionary.has_key("Statistics_1101")
и если у него его нет, добавьте его со значением 1, если он есть, увеличьте на 1.