It is a good idea to install bad ideas!
Bad ideas include a collection of bad Python 3 ideas. This package is not compatible with Python 2.
Bad Ideas are prepared for PyCon 2017 talk: Magic Method, on the wall, who, now, is the
__fairest__ one of all?. You can read the proposal for this talk on the Zepworks blog
If you have any bad ideas that you want to be added here, let me know!
This code is for educational purposes ONLY. Use it at your own risk.
pip install bad-ideas
Type less by in-place editing of numbers
Avoid the carpal tunnels, use mutable integers!
>>> from bad import number >>> num = number(10) >>> num + 3 13 >>> num 13 >>> 3 - num -10 >>> num -10 >>> 2 / num -0.2 >>> num -0.2
Filter that returns list instead of generator when printed
>>> from bad import filtered >>> foo = [1, 2, 3, 5, 6, 7] >>> filtered(lambda x: x % 3 == 0, foo) [3, 6]
Pipe and grep
>>> from bad import grep >>> LINES = """ ... Whether you're new to programming or ... an experienced developer, it's easy ... to learn and use Python. ... Checkout jobs.python.org ... for Python jobs. ... """ >>> LINES | grep('Python') ['to learn and use python.', 'checkout jobs.python.org', 'for python jobs.'] >>> LINES | grep('Python') | grep('jobs') ['checkout jobs.python.org', 'for python jobs.']
Need some memory leaking? Subclass the Undeletable to introduce "persistent" objects that won't go away!
>>> from bad import Undeletable >>> obj = Undeletable() >>> del obj You can't delete me! >>> obj <undeletable:4127530384>
Note that you can have many references to the same object. You can still delete all the references except the last one:
>>> obj2 = obj >>> del obj2 >>> obj2 Traceback (most recent call last): File "<stdin>", line 1, in <module> NameError: name 'obj2' is not defined >>> obj <undeletable:4127530384>
Have a bad idea? Let me know!
Make a PR or open a ticket!