Форум сайта python.su
Программа должна открывать текстовый файл f в кодировке UTF-8 содержащий латинский текст После этого она должна:
1. записать в новый файл список всех встретившихся в f словоформ оканчивающихся -ibus или -arum
2. заменить в f все словоформы оканчивающихся -ibus или -arum и встречающиеся в f более двух раз на соответственно “__ibus” или “__arum”, никаких других изменений в файле не производить, результат записать в новый файл
3. Если считать что основу любой словоформы можно получить отрезанием -ibus или -arum, составить частотный список основ таких словоформ и записать в csv таблицу (1 словоформа = 1 строка) в первом поле пишется словоформа во втором количество ее употреблений в словоформах содержащих -ibus или -arum, разделитель точка с запятой список может быть неотсортированным Регистр не учитывается
Офлайн
чет не понял.
Привели пример словоформы
содержание файла и что там необходимо найти
Отредактировано ilnur (Апрель 23, 2013 11:33:10)
Офлайн
nightviСудя по задаче Вам нужно, чтобы за Вас решили данную задачу.
Помогите решить задачу
Офлайн
2 -е сделал вот так
# coding: utf-8 import re f = open('f.txt').read().decode('utf-8') new = re.sub(ur'ibus\b', u'__ibus ', f) new = re.sub(ur'arum\b ', u'__arum ', new) open('f_new.txt','w').write(new.encode('utf-8'))
Офлайн
# coding: utf-8 import re pattern = 'ibus' pattern2 = 'arum' f = open('f.txt').read().decode('utf-8') found = re.findall(pattern, f) found = re.findall(pattern2, found) open('f_new.txt','w').write(found.encode('utf-8'))
Отредактировано nightvi (Апрель 24, 2013 13:33:42)
Офлайн