fork(1) download
  1. from random import randrange, random
  2. import re
  3.  
  4.  
  5. TEXT = 'Елена Ваенга срочно госпитализирована в Минске В стране и мире►Шоу-бизнесНа днях Елена Ваенга принимала участие в большом концерте "Шансон года", где выходила на сцену и получила свою награду.Сразу после концерта певице надо было ехать в Минск. Уже сидя в купе поезда, Елена пожаловалась на плохое самочувствие и ее срочно госпитализировали.Уже позже в блоге Ваенги появилась фотография, сделанная с больничной койки. На ней видно, что певице поставили капельницу. Под снимком Елена написала для подписчиков: "Писать, что мне лучше, я не буду. Вранье. Мне чуть - чуть хуже.... но мы с врачами боремся......)))))) белорусские врачи очень хорошие..... и все обо мне заботятся и лечат..... так вышло... так получилось...... я должна отболеть свои грехи в пост.... всякое бывает..... да мне жаль себя.... и да.... я не отменю концерты....... некуда перенести.(((((((( если хуже не станет...... надеюсь........ главное, чтобы не пропал голос..... это главное......когда НЕЧЕМ петь тогда каюк..... а пока....... боремся и лечимся ...... все. целую....'
  6. RESTRICTED = r'[,.-]'
  7. RANDOM_FACTOR = 5
  8.  
  9. def normalize_word(word):
  10.  
  11. found = re.search(RESTRICTED, word)
  12. if found:
  13. result = word[:found.start()] + randrange(RANDOM_FACTOR) * '.'
  14. result += normalize_word(word[found.end():])
  15. return result
  16. else:
  17. return word
  18.  
  19.  
  20. def attach_stuff(word, thing):
  21. symbols = thing * 2 * randrange(RANDOM_FACTOR)
  22. return '{0}{1}'.format(word, symbols)
  23.  
  24. def dots(word):
  25. return attach_stuff(word, '.')
  26.  
  27. def smile(word):
  28. return attach_stuff(word, ')')
  29.  
  30. def lowcase(word):
  31. lucky_number_sosnytsky = 1.0 * RANDOM_FACTOR / 20
  32. if random() < lucky_number_sosnytsky:
  33. return word.lower()
  34. return word
  35.  
  36. WORD_FUNCTS = {0: smile,
  37. 1: dots,
  38. 2: lowcase}
  39.  
  40.  
  41. def trial(word):
  42. new_word = WORD_FUNCTS[randrange(3)](word)
  43. if random() > 0.95 * (1.0 / RANDOM_FACTOR) :
  44. new_word = trial(word)
  45. return new_word
  46. return new_word
  47.  
  48.  
  49. def roll():
  50. words = TEXT.split()
  51. normalized_words = [normalize_word(word).upper() for word in words]
  52. result = ' '.join([trial(word) for word in normalized_words])
  53. print(result)
  54.  
  55. roll()
  56.  
Success #stdin #stdout 0.04s 12744KB
stdin
Standard input is empty
stdout
ЕЛЕНА ВАЕНГА.... СРОЧНО)))) ГОСПИТАЛИЗИРОВАНА В МИНСКЕ.. В СТРАНЕ...... И МИРЕ►ШОУ.БИЗНЕСНА ДНЯХ)))))) ЕЛЕНА)))) ВАЕНГА.... ПРИНИМАЛА УЧАСТИЕ.... В.... БОЛЬШОМ...... КОНЦЕРТЕ)))))) "ШАНСОН.. ГОДА"...... ГДЕ ВЫХОДИЛА)))) НА)) СЦЕНУ)))) и ПОЛУЧИЛА.. СВОЮ НАГРАДУ...СРАЗУ...... ПОСЛЕ КОНЦЕРТА...... ПЕВИЦЕ НАДО БЫЛО)) ЕХАТЬ в МИНСК...)) УЖЕ СИДЯ)))) В.... КУПЕ ПОЕЗДА.)))))) ЕЛЕНА)))) ПОЖАЛОВАЛАСЬ........ НА)))))) ПЛОХОЕ САМОЧУВСТВИЕ)))))) И.. ЕЕ СРОЧНО ГОСПИТАЛИЗИРОВАЛИ...УЖЕ...... ПОЗЖЕ)))) В)))))) БЛОГЕ)))))) ВАЕНГИ)))))))) ПОЯВИЛАСЬ)))))))) ФОТОГРАФИЯ СДЕЛАННАЯ С........ больничной КОЙКИ... НА НЕЙ.... ВИДНО........ ЧТО)))))))) ПЕВИЦЕ ПОСТАВИЛИ)))) КАПЕЛЬНИЦУ)))))))) ПОД СНИМКОМ.... ЕЛЕНА........ написала ДЛЯ ПОДПИСЧИКОВ:)))))))) "писать. ЧТО МНЕ)) ЛУЧШЕ Я........ НЕ БУДУ ВРАНЬЕ..... МНЕ ЧУТЬ.. ...)))))) ЧУТЬ ХУЖЕ..... НО МЫ...... С ВРАЧАМИ)))))))) БОРЕМСЯ...........))))))...... БЕЛОРУССКИЕ ВРАЧИ ОЧЕНЬ ХОРОШИЕ..................)) И.. ВСЕ ОБО...... мне ЗАБОТЯТСЯ И)))) ЛЕЧАТ................ ТАК)))))) ВЫШЛО.............. ТАК)))) ПОЛУЧИЛОСЬ..................)))))) Я ДОЛЖНА...... ОТБОЛЕТЬ)))))) СВОИ грехи в ПОСТ...... ВСЯКОЕ БЫВАЕТ............ ДА МНЕ ЖАЛЬ СЕБЯ..................... И...... ДА......... я НЕ........ ОТМЕНЮ.... КОНЦЕРТЫ............)) некуда ПЕРЕНЕСТИ(((((((( ЕСЛИ)))) хуже НЕ.. СТАНЕТ................... НАДЕЮСЬ....................... ГЛАВНОЕ. ЧТОБЫ НЕ........ ПРОПАЛ ГОЛОС............. ЭТО.. ГЛАВНОЕ..................КОГДА НЕЧЕМ)) ПЕТЬ ТОГДА КАЮК......... А...... ПОКА.........)))) БОРЕМСЯ...... И ЛЕЧИМСЯ ............... ВСЕ.... ЦЕЛУЮ............