Python Programming
Python
What it is
Python is a general-purpose language built around readability: indentation defines blocks, types are optional and checked at runtime, and the standard library is large enough that most scripts need nothing else. It is used as a first language, as the glue between other systems, and as the main language of data work and automation. The same code runs on a laptop, in a container and in a cluster, with no compilation step in between.
Why it matters
Python’s advantage is the width of what a single developer can accomplish without learning a second ecosystem: read a file, call an API, parse a document, plot a result and schedule the job, all in one language. That reach is why it dominates scripting and data work, and why it appears in backends as the service that does the awkward part. The trade-offs are equally real — slower execution than compiled languages, and dynamic types that fail at runtime rather than at build time — which is why it is usually paired with something else for the performance-critical path.
In this track
- Language basics (05-backend-data/03-python-programming/01-language-basics) — syntax, functions, control flow and the execution model.
- Data and iteration (05-backend-data/03-python-programming/02-data-and-iteration) — the built-in collections, comprehensions and the iteration protocol.
- Modules and packaging (05-backend-data/03-python-programming/03-modules-and-packaging) — organising code, managing dependencies and virtual environments.
- Scripting and automation (05-backend-data/03-python-programming/04-scripting-and-automation) — the standard-library tools that replace shell scripts.
Prerequisites
None.
Go deeper
- Go (05-backend-data/05-go) — the compiled alternative, worth reading once a Python service becomes the performance bottleneck.
- Java (05-backend-data/04-java) — the statically typed alternative, and the opposite set of trade-offs.
- Server Side (05-backend-data/01-server-side) — the location this language is often used in.