The function random.shuffle
relies on the mutability of the argument and mutability is a pain in the arse, so we propose an alternative.
This article outlines how I use a pre-commit hook and cog to keep my blog stats updated automatically.
The dunder method __new__
is used to customise object creation and is a core stepping stone in understanding metaprogramming in Python.
This article shows how you can create a case-insensitive string class using some basic meta programming with the dunder method __new__
.
This article briefly describes the iterators available in the Python module itertools and how to use them.
Today I learned how to debug the new Python REPL with _pyrepl.trace
and the environment variable PYREPL_TRACE
.
Today I learned how to fix an issue with Ctrl+left and Ctrl+right not working in the new Python REPL on MacOS.
With a couple of loops and a bit of maths you can create a rotating spiral.
Today I learned the difference between __getattr__
and __getattribute__
.
You can use the Python built-in function iter
with two arguments to create an iterator from a function.
You can use generators to simplify nested loops and make it easier to break out of them.
Today I learned how to order the values of a dictionary according to an iterable of keys.
Today I learned how to get the size of the terminal your code is running on.
This article shows how to implement the set built-in at the expense of a dictionary.
Today I learned how to use named tuples to improve readability and flexibility of test parametrisations in pytest.
Today I learned about the parameter match
used in pytest.raises
.
Explore what Python could look like if we got rid of all of its synthatic sugar.
Explore unusual Python features to solve the problem of determining whether an expression is properly parenthesised.
This article shares some of the lessons I learned from working full-time on a FOSS project for 503 days.