Форум сайта python.su
31
Есть толковый словарь русского языка в текстовом файле
пытаюсь создать словарь при чтении из файла, где ключом служит слово , а значением его толкование
# -*- coding: utf-8 -*- from collections import defaultdict with open('modernen.txt') as fi: text = fi.read() D = defaultdict(list) sp = text.split() for i in sp: if i.isupper(): key = i D[key].append(i) #print (D)
АБАЖУР м. франц. косой навесец на свет, на свечу, лампу для затина навесец, тенник, затин, щиток, колпак, козырек косые проемы для окон, сверху вниз, окно откосом. АБАЗ, АБАС м. кавк. персидская серебряная монета, около 20 коп. Восковой шарик от церковной свечи, привешиваемый закавказскими христианами, в знак обета, к шее или пясти. Абаза ж. черноморск. жестокий восточный ветер, от кавказского берега, опасный для дунайских рыбаков. Бран. бестолковый басурманин. Эх вы, абаза немая! Конское тавро, известное на Кавказе, вероятно, от названия горского племени.
{"ДАВЫДОВСКИЙ": 'ДАВЫДОВСКИЙ Ипполит Васильевич 1887 1968 российский патолог основатель научной школы Труды по патологической анатомии инфекционных болезней атеросклероза старения по общей патологии'
"БАБУР": 'БАБУР Захиреддин Мухаммед 1483 1530 основатель государства Великих Моголов потомок Тимура Первоначально правитель удела в Средней Азии затем в Кабуле' }
Отредактировано sanodin (Ноя. 30, 2013 17:43:46)
Офлайн
857
sanodinдля начала упрости словарь
пытаюсь создать словарь при чтении из файла, где ключом служит слово
sanodinэто всё наивное школоло - такое простое не прокатитsp = text.split() for i in sp: if i.isupper(): key = i D[key].append(i)
Отредактировано py.user.next (Ноя. 29, 2013 21:04:11)
Офлайн
31
Делаю по простому
# -*- coding: utf-8 -*- from collections import defaultdict import sys with open('modernen.txt') as fi: text = fi.readlines() D = defaultdict(list) DT = defaultdict(list) for i in text: i = i.split() #print (i) try: if i[0].isupper(): key = i[0] #print (key) for y in i: D[key].append(y) except: pass for key in D: #print(key, D[key]) val = D[key] val = ' '.join(val) DT[key].append(val) sys.stdout = open("out4.txt", "w") print (DT)
Офлайн