Рождественские крекеры из местного супермаркета часто имеют худшие шутки. Мы говорим: «Должен быть лучшим способом». Сохраните свои любимые шутки на это Рождество и услышать звук Guffaws 🤣, а не тишина криминальных лиц 😬.
Это поддерживается база данных, он в Интернете, это в Python … и нам не нужно было написать линию JavaScript – Да, мы использовали Наковальня :
Компонент холста
Наковальня Холст Компонент дает нам доступ к аписам рисования браузера, а также легкие события мыши – так что это казалось идеальным способом построить это приложение:
def draw_background(self): img = URLMedia('_/theme/cracker.png') c = self.canvas m = self.margin c.draw_image(img, m, 0, c.get_width() - 2*m, c.get_height()) def canvas_mouse_up(self, x, y, button, **event_args): """This method is called when a mouse button is pressed on this component""" if (x < self.margin): self.idx = (self.idx - 1) % len(self.jokes) elif x > self.w - self.margin: self.idx = (self.idx + 1) % len(self.jokes) self.write_joke()
Батареи включены
Наковальня Python в браузере поставляется с Python’s Батареи включены Философия, от ваших любимых библиотек Python до F-Strings.
import itertools import textwrap import random class TellJokes(TellJokesTemplate): def __init__(self, **properties): self.init_components(**properties) self.jokes = list(app_tables.crackers.search()) self.idx = 0 self.QorA = itertools.cycle('QA') # switch between Q and A self.margin = 80 self.laughing = '🤣😂😹😆🙈' self.text = 'Click To Start Telling Jokes 🎅' def write_joke(self, text=None): if text is None: QorA = next(self.QorA) text = f"{QorA}. {self.jokes[self.idx][QorA]}" if QorA is 'A': text += ' ' + random.choice(self.laughing) # add a random laugh emoji # wrap lines for readability wrapped_text = textwrap.wrap(text, int(self.canvas.get_width() - 2*self.margin)/35))) ...
Поделиться смехом
Я использовал наковальню Таблицы данных Служба для создания базы данных, затем построила интернет-интерфейс с помощью DataGrid составная часть. Теперь я могу отправить приложение в семью – надеюсь, что они придумывают некоторые лучшие шутки, чем я делал 🙄.
Просмотр исходного кода
Хотите поиграть с приложением самостоятельно? Проверьте исходный код:
Открытый исходный код >>
Оригинал: “https://dev.to/meredydd/cracker-jokes-as-a-service-with-python-2hna”