Python Annotations
Python is dynamically typed. We do not have to specify the type of a variable or function parameter, or a function return value.
Annotations allow us to (optionally) do that.
This is a function without annotations:
def increment(n):
return n + 1
This is the same function with annotations:
def increment(n: int) -> int:
return n + 1
You can also annotate variables:
count: int = 0
Python will ignore those annotations. A separate tool called mypy
can be run standalone, or integrated by IDE like VS Code or PyCharm to automatically check for type errors statically, while you are coding, and it will help you catch type mismatch bugs before even running the code.
A great help especially when your software becomes large and you need to refactor your code.
I wrote 17 books to help you become a better developer, download them all at $0 cost by joining my newsletter
JOIN MY CODING BOOTCAMP, an amazing cohort course that will be a huge step up in your coding career - covering React, Next.js - next edition February 2025