Python 3.x supports (optional) function annotations:
def add_ints(x:int, y:int) -> int : return x+y
I sometimes encounter problems as to
While Generator[x, y, z] exists, most of the time, you might want to use the less verbose Iterator:
Generator[x, y, z]
Iterator
def add_ints(x: int) -> Iterator[int]: return (n for n in range(x) if n%2 == 0)
Also works for yield
yield
def add_ints(x: int) -> Iterator[int]: for n in range(x): yield n