Collection of stupid python modules
Project description
stupidity.py - toolkit for stupid Python code
Installation
pip install stupidity
Switch statement
Ever miss the classic switch statement in Python?
from stupidity import switch
for case in switch('b'):
if case('a'):
print('this is not printed')
if case('b'):
print('this is printed')
if case('c'):
print('fallthrough is also supported')
break
if case('d'):
print('this is not printed either')
print('default value at bottom, but this is not reached')
Think if
-statements are stupid? We've got you covered!
from stupidity import switch
for case in switch('b'):
with case('a'):
print('this is not printed')
with case('b'):
print('this is printed')
with case('c'):
print('fallthrough is also supported')
break
with case('d'):
print('this is not printed either')
print('default value at bottom, but this is not reached')
Think for
-loops are stupid too? We can get rid of those as well:
from stupidity import switch
with switch('b') as case:
with case('a'):
print('this is not printed')
with case('b'):
print('this is printed')
with case('c'):
print('fallthrough is also supported')
BREAK # NOTE: We have to yell here
with case('d'):
print('this is not printed either')
print('default value at bottom, but this is not reached')
Dealing with closure variables
Ever get annoyed at those pesky variables inside closures that are seemingly just outside your reach? Fear no more!
from stupidity import replace_closure_variables
def foo():
x = 42
def f():
return x
return f
f = foo()
f() # 42
replace_closure_variables(f, x=123)
f() # 123
Braces
Everyone knows that importing braces
from __future__
fails miserably:
from __future__ import braces
# File "<stdin>", line 1
# SyntaxError: not a chance
Luckily, we provide a working implementation:
from stupidity import braces
x = 42;
if (x == 123): {
print('nope')
}
elif (x == 42): {
print('yep')
}
# prints 'yep'
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
stupidity-0.0.1.tar.gz
(4.5 kB
view details)
File details
Details for the file stupidity-0.0.1.tar.gz
.
File metadata
- Download URL: stupidity-0.0.1.tar.gz
- Upload date:
- Size: 4.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.1.3 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | fd40770018815e061b22a8ca994459638a01cf1d9edb1426853ca3e4462f07f8 |
|
MD5 | a728d9aabce4a611eca881368140c1ea |
|
BLAKE2b-256 | e20a390b447e4b6f5f21cd607229c6b564a912dae7105e6c32204e2561296fd2 |