TGViewer
Python: задачки и вопросы Python: задачки и вопросы @quiz_python · 6.91K subscribers
Post #3595 1.35K
Код возвращает 6 из-за того, что функция func складывает три аргумента: a, b и c. Давайте разберем, что происходит в коде более подробно.

1. Функция func:

   def func(a: 'spam', b: (1, 10), c: float) -> int:

- a: 'spam': Это аннотация для параметра a. Текст 'spam' здесь не имеет особого значения в самом коде, скорее всего, это просто строка, которая может использоваться для документации или информации о том, какой тип ожидался. В действительности, это просто строка, и Python не проводит никаких проверок типов на основе этой аннотации.
- b: (1, 10): Это также аннотация, которая указывает, что b должен быть значением, соответствующим кортежу (1, 10). Однако, как и в случае с аннотацией для a, эта информация не проверяется в самом коде.
- c: float: Это аннотация, указывающая, что параметр c должен быть типа float.
- -> int: Это аннотация, которая указывает, что функция будет возвращать значение типа int.

2. Сложение аргументов:
Когда вы вызываете func(1,2,3), переданная строка 1, 2 и 3 становятся значениями a, b и c соответственно. То есть:
- a = 1
- b = 2
- c = 3

>>> func.__annotations__
... {'с': class 'float’>, ’b’: (1, 10), 'a': 'spam', 'return': <class ’int’>}
More from @quiz_python
  1. Oct 2, 2026Развёрнутое пояснение: 1. Вызов orders() создаёт объект генератора, но его тело пока не вы…
  2. Oct 2, 2026Post #4908
  3. Oct 1, 2026Развёрнутое пояснение: 1. Кортеж regions задаёт два ключа: eu и us. 2. dict.fromkeys(regio…
  4. Oct 1, 2026Post #4906
  5. Sep 30, 2026Развёрнутое пояснение: 1. defaults содержит исходные значения timeout и retries, а env изн…
  6. Sep 30, 2026Post #4904
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →