Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from python_static_type import decorate_static_type, ExceptionStaticType
- class Test:
- pass
- @decorate_static_type
- def func1(x: int, y: str) -> list:
- return (x, y) # Указали неправильный тип.
- @decorate_static_type
- def func2(*, key: str = '', tuple_var: tuple = (), list_var: list = [[[[]]]]) -> str:
- return key
- func2() # Отработает хорошо.
- try:
- func1(1, "str")
- except ExceptionStaticType as e:
- print(e) # Функция func1: Возвращает неожиданное значение, ожидалось "list"
- try:
- func1(y=1, x="2")
- except ExceptionStaticType as e:
- print(e) # Функция func1: Аргумент "y" имеет тип "int", а ожидался "str"
- try:
- func1('2', 1)
- except ExceptionStaticType as e:
- print(e) # Функция func1: Аргумент "x" имеет тип "str", а ожидался "int"
- try:
- func1(1, Test)
- except ExceptionStaticType as e:
- print(e) # Функция func1: Аргумент "y" имеет тип "type", а ожидался "str".
- try:
- func1(1, True)
- except ExceptionStaticType as e:
- print(e) # Функция func1: Аргумент "y" имеет тип "bool", а ожидался "str".
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement