Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Система типов в Python

Система типов в Python

Александр Хаёров (Ingram Micro) @ Python Junior Meetup №1

"Типизация — важный аспект, который зачастую характеризует тот или иной язык программирования, наделяя его разными свойствами. В докладе будут рассмотрена общая информация о типизации, ее роли. Узнаем подробно какая типизация в Python и как использовать для написания лучшего кода".

Moscow Python Meetup

February 09, 2017
Tweet

More Decks by Moscow Python Meetup

Other Decks in Programming

Transcript

  1. ++++++++++[>+++++ +<<<<-]>++.>+.++++ ++++++++.>.+++.----- Бестиповая типизация все сущности - последовательности бит

    низкоуровневые языки: assembler, forth и brainf*ck, awk плюсы минусы полная свобода эффективный код сложно и неудобно легко ошибиться
  2. Типовая типизация статическая динамическая скорость выполнения интеграция с IDE обнаружение

    ошибок универсальные коллекции обобщенные алгоритмы легкость в освоении
  3. явная неявная краткость записи -- Явное указание типа add ::

    (Integer, Integer) -> Integer add (x, y) = x + y -- Без явного указания типа add (x, y) = x + y устойчивость к изменениям понятная запись не нужно запоминать тип выборочная явная типизация
  4. def fib(n: int) -> Iterator[int]: a, b = 0, 1

    while a < n: yield a a, b = b, a+b def fib(n): a, b = 0, 1 while a < n: yield a a, b = b, a+b PEP 484 -- Type Hints MYPY checker Stubs (statically typed interface definitions)