This is for fun, for silliness and for do not use anywhere-ness – or to quote the instructions:
If you’ve ever wondered just how egregious your use of Python could be, or how unnecessarily elaborately you could engineer a simple piece of code, we want your entries in our Rube Codeberg competition! Named for the famously complicated machines drawn by American cartoonist Rube Goldberg, the Codeberg competition is a chance for you to showcase your creativity. Everyone is welcome to participate in the competition – or just tune in as the results are announced. You may find you learn a thing or two about how Python ticks along the way.
So here we go (or a a gist):
#!/usr/bin/env python3
from bs4 import BeautifulSoup
def decl(l): return lambda f: lambda: l + f()
def decp(f): return lambda: print(BeautifulSoup(f(),'html.parser').prettify(), end='')
@decp
@decl('H')
@decl('e')
@decl('l')
@decl('l')
@decl('o')
@decl(' ')
@decl('W')
@decl('o')
@decl('r')
@decl('l')
@decl('d')
@decl('!')
def main(): return ''
main()
Because why not? 😀
And along those lines – how about a variation (slightly after the deadline) with a little but of animation (gist)?
#!/usr/bin/env python3
# A slightly animated cute (but after the deadline version) of pycon2020-RubeCodeberg.py
from bs4 import BeautifulSoup
import sys
import time
def decl(l): print(l, end=''); sys.stdout.flush(); time.sleep(0.1); return lambda f: f
@decl('H')
@decl('e')
@decl('l')
@decl('l')
@decl('o')
@decl(' ')
@decl('E')
@decl('v')
@decl('e')
@decl('r')
@decl('y')
@decl('o')
@decl('n')
@decl('e')
@decl(' ')
@decl('A')
@decl('t')
@decl(' ')
@decl('P')
@decl('y')
@decl('c')
@decl('o')
@decl('n')
@decl('(')
@decl('l')
@decl('i')
@decl('n')
@decl('e')
@decl(')')
@decl('A')
@decl('U')
@decl(' ')
@decl('2')
@decl('0')
@decl('2')
@decl('0')
@decl('!')
@decl('\b')
@decl('\b')
@decl('\b')
@decl('\b')
@decl('\b')
@decl('\b')
@decl('\b')
@decl('\b')
@decl('\b')
@decl('\b')
@decl('\b')
@decl('\b')
@decl('\b')
@decl('\b')
@decl('\b')
@decl('\b')
@decl('\b')
@decl('\b')
@decl('\b')
@decl('\b')
@decl('\b')
@decl('\b')
@decl('\b')
@decl('\b')
@decl('\b')
@decl('\b')
@decl('\b')
@decl('\b')
@decl('\b')
@decl('\b')
@decl('\b')
@decl('W')
@decl('o')
@decl('r')
@decl('l')
@decl('d')
@decl('!')
@decl(' ')
@decl(' ')
@decl(' ')
@decl(' ')
@decl(' ')
@decl(' ')
@decl(' ')
@decl(' ')
@decl(' ')
@decl(' ')
@decl(' ')
@decl(' ')
@decl(' ')
@decl(' ')
@decl(' ')
@decl(' ')
@decl(' ')
@decl(' ')
@decl(' ')
@decl(' ')
@decl(' ')
@decl(' ')
@decl(' ')
@decl(' ')
@decl(' ')
def main(): pass
main()
print(BeautifulSoup('','html.parser').prettify())