# int, float, str, bool, bytes, list, tuple, dict, set, frozenset, None . a: int = 3 b: float = 2.4 c: bool = True d: list = ["A", "B", "C"] e: dict = {"x": "y"} f: set = {"a", "b", "c"} g: tuple = ("name", "age", "job") print(a,b,c,d,e,f,g) class Person: first_name: str = "John" last_name: str = "Does" age: int = 31 def my_dummy_function(l: list[float]): return sum(l) from typing import List def my_dummy_function(vector: List[float]): return sum(vector) from typing import Callable def sum_numbers(x: int, y: int) -> int: return x + y def foo(x: int, y: int, func: Callable) -> int: output = func(x, y) return output foo(1, 2, sum_numbers) def foo(x: int, y: int, func: Callable[[int, int], int]) -> int: output = func(x, y) return output #https://towardsdatascience.com/12-beginner-concepts-about-type-hints-to-improve-your-python-code-90f1ba0ac49 """ # type_x , type_y , type_z , type_return def add_numbers(x: type_x, y: type_y, z: type_z= 100) -> type_return: return x + y + z print(add_numbers(1,2,3)) """