Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Архиватор Python 
:(
    Опции темы
Aleks99
Дата 7.6.2013, 16:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 7.6.2013

Репутация: нет
Всего: нет



Я новичок в Python, задали задачу, не могу додумать как ее решить.
Есть текстовый файл, нужно по нему пробежаться, найти повторяющиеся слова, создать словарь вида "слово:цифра" и заменить слова цифрами, при этом поместить его в начало файла и после этого считать и заменить все обратно до исходного текста.
Есть код, он делает что то подобное с символами, не понимаю как заставить его слова понимать
Код

# -*- coding: cp1251 -*-
import re

s,match,b = 'abbcccddddfjja','',''
t = []

for i in s:
    if i == b: continue
    b = i
    pattern = '%s{1,}' % i
    match = re.search(pattern, s)
    s_ = str(len(match.group())) + match.group()
    t.append(s_[:2])
    #match = re.sub(pattern, s_[:2], s)    
print 'строка: ' + s + '\n' + 'заархивирована: ' + str(t)

s = ''
for i in t:
    s += int(i[0])*i[1]
print "разархивирована: " + s


Это сообщение отредактировал(а) Aleks99 - 7.6.2013, 16:38
PM MAIL   Вверх
cav
Дата 15.6.2013, 06:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 20.2.2007

Репутация: нет
Всего: нет



пробегаешь по тексту
строишь словарь (dict) из пар "слово:цифра" 

word=dict()
for l in text:
   if word.has_key(l):  # где l у нас слово
     # нашли слово в словаре
    word[l]+=1  
   else :
    # не нашли слово в словаре
    word[l]=1
  
во примерно как то так можно строить словарь вхождения слов

Этот ответ добавлен с нового Винграда - http://vingrad.com
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Python: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0599 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.