This article shows 5 ways of flattening a list of lists, ranked from worst to best.
A conversation between Rodrigo Girão Serrão and Stephen Gruppetta on analogies in programming.
In the 8th part of this series of building a Python compiler and interpreter we will add support for Boolean literals and Boolean operators.
Today I learned how many soft keywords Python has and what they are.
Today I learned that the underscore _
is a soft keyword in Python.
In the 7th part of this series of building a Python compiler and interpreter we will add support for if
statements.
In the 6th part of this series of building a Python compiler and interpreter we will add support for variables, simple assignments, and chained assignments.
In the 5th part of this series of building a Python compiler and interpreter we will add support for multiple statements in our program.
In the 4th part of this series of building a Python compiler and interpreter we will add support for more arithmetic operations and parenthesised expressions.
In the third part of this series of building a Python compiler and interpreter we will make our parser, compiler, and interpreter, much more flexible with the visitor pattern.
In the second part of this series of building a Python compiler and interpreter we will improve the support of numbers.
Today I learned that you can run custom Python code when Python starts-up, before running other scripts or programs.
In this tutorial series we will build a Python compiler and interpreter from scratch. We start with simple arithmetic expressions.
Learn how batched
from the module itertools
works, example use cases, and how to implement it.
Today I learned that Python and other programming languages have negative zero, -0.0.
Today I learned about the Python 3.12 type statement you can use to create type aliases.
Today I learned how to create a sentinel value to use as a default argument in a way that respects Python typing.