Я пытаюсь написать функцию, которая превратит мой текстовый файл в словарь с подмножествами. Текст документа, который я загружен до сих пор отображается как показал:Python - loading file - dictionary
101
102
103
201, John Cleese, 5/5/12, 5/7/12
202
203, Eric Idle, 7/5/12, 8/7/12
301
302
303
результат функции должен получить информацию загружен и вернуть его как:
[('101', None), ('102', None), ('103', None),
('201', Guest(John Cleese, 05/05/12, 05/07/12)), ('202', None),
('203', Guest(Eric Idle, 07/05/12, 08/07/12)), ('301', None),
('302', None), ('303', None)]
я пытался isdigit, но но безрезультатно. Мне удалось получить последнюю комнату (303), чтобы почти функционировать.
def load_rooms(self, filename):
fd = open(filename, 'rU')
self._rooms = {}
for i in fd:
i = i.rstrip()
print i
if i.isdigit():
self._rooms[i] = None
print self._rooms
else:
print i
отображает
101
102
103
201, John Cleese, 5/5/12, 5/7/12
202
203, Eric Idle, 7/5/12, 8/7/12
301
302
303
{'303': None}
Ого, я только заметил, что номер 303 показан дважды ... Ну мой вопрос, как бы я подхожу загрузку текстового файла? Должен ли я удостовериться, что весь код находится в формате, или я могу просто написать функцию, которая превратит ее в словарь с подмножествами? Я совершенно новый со словарями, поэтому небольшая помощь будет отличной. благодаря
Вы знаете о модуле 'csv'? –
Почему ts tagged с tkinter? Я не вижу ничего связанного с Ткинтером в вопросе. –
@ Bryan Oakley извините, ваше право. я попытаюсь удалить его. –