X-Git-Url: https://git.mdrn.pl/wolnelektury.git/blobdiff_plain/4dc96918a2e2df441c282a7abbb89235ecb4f2f7..f2c1566914d2ee615546134b9e080fc32c1a1094:/apps/lesmianator/views.py diff --git a/apps/lesmianator/views.py b/apps/lesmianator/views.py index 231ab5c96..893677290 100644 --- a/apps/lesmianator/views.py +++ b/apps/lesmianator/views.py @@ -1,6 +1,6 @@ # Create your views here. -import pickle +import cPickle from django.shortcuts import render_to_response from django.template import RequestContext from random import randint @@ -23,7 +23,7 @@ def _choose_word(word): # load dictionary on start, it won't change try: f = open(os.path.join(os.path.dirname(__file__), 'dictionary.p')) - _dictionary = pickle.load(f) + _dictionary = cPickle.load(f) except: _dictionary = {} @@ -33,14 +33,22 @@ def poem(request): word = u'' empty = -10 left = 1000 + lines = 0 if not _dictionary: left = 0 - while empty != 3 and left: + # want at least two lines, but let Lesmianator end his stanzas + while (empty < 2 or lines < 2) and left: letter = _choose_word(word) letters.append(letter) word = word[-2:] + letter if letter == u'\n': - empty += 1 + # count non-empty lines + if empty == 0: + lines += 1 + # + if lines >= 2: + empty += 1 + lines += 1 else: empty = 0 left -= 1