Продолжим наш экскурс для начинающих в основы и особенности либертарианского языка программирования, самого, пожалуй, популярного и востребованного среди тех, кто сегодня пытается войти в… да вы и сами знаете какая тут должна быть рифма. 

Сегодня поговорим про типы данных в Python и их иерархию. В иерархии типов упорядочение отражается в том, что существуют общие операции для типов, принадлежащих к типу более высокого уровня.

На схеме выше изображена иерархия только части стандартных типов данных. В Python их больше, например, неизменяемые множества (frozenset) или неизменяемые последовательности отдельных байтов (bytes). 

Давайте немного разберем указанные типы. 

  1. Целое число (int)

Целые числа могут быть представлены в Python с использованием десятичных, двоичных, шестнадцатеричных или восьмеричных систем счисления. Почти всегда используются привычные десятичные. Они состоят из десяти цифр: 0123456789. Десятичное (ненулевое) число не может начинаться с нуля. При этом запись в двоичной системе в Python начинается как раз у нуля, и именно так интерпретатор языка понимает, что здесь используется двоичная система. 

  1. Числа с плавающей запятой (float)

Число с плавающей запятой может быть представлено в виде десятичной дроби или в экспоненциальной записи. Десятичная дробь состоит из последовательности цифр с точкой, например: 3.14, или 0.45, или 0.23, или 2.0 (но не просто 2). 

Литерал float в экспоненциальной записи состоит из числа, за которым следует буква e или E, знака (+ или -), который также может быть опущен для положительных показателей степени, и, наконец, целого числа в качестве Степени.

Допустимые литералы:

1.0е-3 соответствует числу 1 * 10–3 или 0.001.

2.1Е+2 соответствует числу 2,1 * 102 или 210.

Недопустимо:

0.1-Е7 знак минус перед Е.

1.2е0.3 степень выражена нецелым числом.

1Е степень выражена не числом.

  1. Комплексные числа (complex)

Python предлагает сложный тип данных для вычислений с комплексными числами. Комплексное число записывается как выражение вида:

a + bj или a + bJ, где a и b — целые числа (int) или числа с плавающей запятой (float). После мнимой части b следует маленькая буква j или большая J, обозначающая мнимую единицу i (обычно в электротехнике буква j используется вместо i). 

  1. Строки (str)

Строки — это последовательность символов из алфавита. Строка начинается и заканчивается одинарными или двойными кавычками.

Примеры:  'Python' или "Python".

  1. Кортежи (tuple)

Несколько объектов одного или разных типов объединяются в кортеж. Литерал кортежа начинается и заканчивается круглыми скобками, а разные элементы в скобках разделены запятой.

Пример записи имени человека и года рождения (2, "разных типов данных"):

человек = ('Анна', 2001)

  1. Список (list)

Список — это изменяемая последовательность объектов любого типа. Литерал списка начинается и заканчивается квадратными скобками. Элементы в нем перечислены через запятую. В отличие от строк и кортежей, список можно изменить.

Пример: simple_numbers = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29]

  1. Множества (set)

Множества — это неупорядоченные коллекции без повторений. То есть элементы одного множества не имеют определенного порядка, и каждый элемент встречается только один раз. В Python множества представлены типом set. Вы создаете объект этого типа, перечисляя элементы в фигурных скобках: {1, 2, 3}

  1. Словарь (dict)

Словарь состоит из пар вида ключ: значение, заключенных в две фигурные скобки и разделенных запятыми. 

Пример: >>> d = {'sun':'Sonne', 'moon':'Mond', 'star':'Stern'}

Между двумя компонентами пары стоит двоеточие. Выражение перед двоеточием называется ключом, а после него — значением. Ключ обеспечивает доступ к значению. Вы пишете ключ в квадратных скобках после названия словаря. 

Пример:

>>> d['moon']

'Mond'

  1. Логические значения — тип данных bool

Два значения «истина» и «ложь» представлены литералами True и False. Обратите внимание на орфографию! И True, и False начинаются с заглавных букв. Особенностью Python является то, что все объекты имеют истинностное значение: Пустые наборы, например, пустая строка '' или пустой список [] и числа со значением ноль имеют значение False. Непустые наборы и все ненулевые числа имеют значение True. Вы можете получить логическое значение объекта, набрав bool():

>>> bool(123)

>>> True

>>> bool(0)

>>> False

  1. NoneType

Для типа данных NoneType существует только один литерал, а именно пустой объект None. Звучит несколько парадоксально: объект None ничего не означает. Тем не менее, его можно присвоить переменной и вывести с помощью print(). Объект None крайне редко используется непосредственно при программировании, но часто встречается в сообщениях об ошибке.

Информация взята из начальных глав книги Михаэля Вайгенда «Python для учебы и работы. Как освоить самый мощный язык программирования для будущей карьеры», которая отлично подходит для каждого желающего начать изучения Python.  

bombora.ru