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

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

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

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

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

Avatar for Moscow Python Meetup

Moscow Python Meetup PRO

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)