Типы данных в Python для самых маленьких
Продолжим наш экскурс для начинающих в основы и особенности либертарианского языка программирования, самого, пожалуй, популярного и востребованного среди тех, кто сегодня пытается войти в… да вы и сами знаете какая тут должна быть рифма.
Сегодня поговорим про типы данных в Python и их иерархию. В иерархии типов упорядочение отражается в том, что существуют общие операции для типов, принадлежащих к типу более высокого уровня.
На схеме выше изображена иерархия только части стандартных типов данных. В Python их больше, например, неизменяемые множества (frozenset) или неизменяемые последовательности отдельных байтов (bytes).
Давайте немного разберем указанные типы.
Целое число (int)
Целые числа могут быть представлены в Python с использованием десятичных, двоичных, шестнадцатеричных или восьмеричных систем счисления. Почти всегда используются привычные десятичные. Они состоят из десяти цифр: 0123456789. Десятичное (ненулевое) число не может начинаться с нуля. При этом запись в двоичной системе в Python начинается как раз у нуля, и именно так интерпретатор языка понимает, что здесь используется двоичная система.
Числа с плавающей запятой (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Е степень выражена не числом.
Комплексные числа (complex)
Python предлагает сложный тип данных для вычислений с комплексными числами. Комплексное число записывается как выражение вида:
a + bj или a + bJ, где a и b — целые числа (int) или числа с плавающей запятой (float). После мнимой части b следует маленькая буква j или большая J, обозначающая мнимую единицу i (обычно в электротехнике буква j используется вместо i).
Строки (str)
Строки — это последовательность символов из алфавита. Строка начинается и заканчивается одинарными или двойными кавычками.
Примеры: 'Python' или "Python".
Кортежи (tuple)
Несколько объектов одного или разных типов объединяются в кортеж. Литерал кортежа начинается и заканчивается круглыми скобками, а разные элементы в скобках разделены запятой.
Пример записи имени человека и года рождения (2, "разных типов данных"):
человек = ('Анна', 2001)
Список (list)
Список — это изменяемая последовательность объектов любого типа. Литерал списка начинается и заканчивается квадратными скобками. Элементы в нем перечислены через запятую. В отличие от строк и кортежей, список можно изменить.
Пример: simple_numbers = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29]
Множества (set)
Множества — это неупорядоченные коллекции без повторений. То есть элементы одного множества не имеют определенного порядка, и каждый элемент встречается только один раз. В Python множества представлены типом set. Вы создаете объект этого типа, перечисляя элементы в фигурных скобках: {1, 2, 3}
Словарь (dict)
Словарь состоит из пар вида ключ: значение, заключенных в две фигурные скобки и разделенных запятыми.
Пример: >>> d = {'sun':'Sonne', 'moon':'Mond', 'star':'Stern'}
Между двумя компонентами пары стоит двоеточие. Выражение перед двоеточием называется ключом, а после него — значением. Ключ обеспечивает доступ к значению. Вы пишете ключ в квадратных скобках после названия словаря.
Пример:
>>> d['moon']
'Mond'
Логические значения — тип данных bool
Два значения «истина» и «ложь» представлены литералами True и False. Обратите внимание на орфографию! И True, и False начинаются с заглавных букв. Особенностью Python является то, что все объекты имеют истинностное значение: Пустые наборы, например, пустая строка '' или пустой список [] и числа со значением ноль имеют значение False. Непустые наборы и все ненулевые числа имеют значение True. Вы можете получить логическое значение объекта, набрав bool():
>>> bool(123)
>>> True
>>> bool(0)
>>> False
NoneType
Для типа данных NoneType существует только один литерал, а именно пустой объект None. Звучит несколько парадоксально: объект None ничего не означает. Тем не менее, его можно присвоить переменной и вывести с помощью print(). Объект None крайне редко используется непосредственно при программировании, но часто встречается в сообщениях об ошибке.
Информация взята из начальных глав книги Михаэля Вайгенда «Python для учебы и работы. Как освоить самый мощный язык программирования для будущей карьеры», которая отлично подходит для каждого желающего начать изучения Python.