TIL (Today I Learned)

The TIL series of articles contains very short articles documenting something I learned “today”.

Today I learned that you can build web apps with Python using streamlit.

Today I learned that the reverse of some flag emoji are other flags!

Today I learned how to cook with asyncio and async code in Python.

Today I learned how to use the namedtuple from the module collections.

Today I learned about the Python module selectors to manage multiple socket connections.

Today I learned you can read from stdin with open(0).

Today I learned the basics of socket programming (in Python).

Today I learned that the module contextlib provides with a context manager to suppress specified errors.

Today I learned about the symmetry in indexing from the beginning and end of a list with the bitwise invert operator.

Today I learned how to write the Quicksort algorithm in a weird functional style.

Today I learned you can use pathlib to read the contents of a file.

Today I learned how the rich comparison protocol and, in particular, how eq works behind the scenes.

Today I learned that Python 3.5+ supports the operator @ for matrix multiplication.

Today I learned that you can use emojis as variable names in Python if you use pythonji.

Today I learned that Python generators can return a value.

Today I learned about the built-in function vars in Python.

Today I learned that the .join method in Python is a two-pass algorithm, and that's why joining a list comprehension is faster than a generator expression.

Today I learned about the math.nextafter method.

Today I learned that files can also be unpacked in Python.

Today I learned strings can also be unpacked in Python.