Python тип данных фигурные скобки

Data types

Каждое значение в Python имеет тип. Поскольку всё в Python — объекты, типы являются классами, а значения — экземплярами (объектами) этих классов.

Числа

Целые числа, числа с плавающей запятой и комплексные числа относятся к группе чисел. В Python они представлены классами int, float и complex.

Мы можем использовать функцию type(), чтобы узнать класс переменной или значения, и функцию isinstance() для проверки принадлежности объекта определённому классу:

 a: int = 5print(a, "is of type", type(a))# 5 is of type b: float = 2.0print(b, "is of type", type(a))# 2.0 is of type c: complex = 1+2jprint(a, "is complex number?", isinstance(1+2j, complex))# (1+2j) is complex number? True a: int = 5 print(a, "is of type", type(a)) # 5 is of type b: float = 2.0 print(b, "is of type", type(a)) # 2.0 is of type c: complex = 1+2j print(a, "is complex number?", isinstance(1+2j, complex)) # (1+2j) is complex number? True      

Целые числа могут быть любой длины, они ограничиваются лишь доступной памятью в 4 байта.

Числа с плавающей запятой имеют ограниченную точность. Визуально разницу между целым числом и числом с плавающей запятой можно заметить в консоли по наличию точки: 1 — целое число, 1.0 — с плавающей запятой.

Комплексные числа записываются в форме x+yj, где x — действительная часть числа, а y — мнимая.

Списки

Список представляет собой упорядоченную последовательность элементов. Он очень гибкий и является одним из самых используемых типов в Python. Элементы списка необязательно должны быть одного типа.

Объявить список довольно просто. Внутрь квадратных скобок помещаются элементы списка, разделённые запятой:

 a: list = [1, 2.2, 'python'] a: list = [1, 2.2, 'python']      

Мы можем использовать оператор [] для извлечения элемента (такая операция называется «доступ по индексу») или диапазона элементов (такая операция называется «извлечение среза») из списка. В Python индексация начинается с нуля:

 a: list = [5,10,15,20,25,30,35,40]print("a[2] block-code__original-line"># a[2] = 15print("a[0:3] block-code__original-line"># a[0:3] = [5, 10, 15]print("a[5:] block-code__original-line"># a[5:] = [30, 35, 40] a: list = [5,10,15,20,25,30,35,40] print("a[2] token punctuation">, a[2]) # a[2] = 15 print("a[0:3] token punctuation">, a[0:3]) # a[0:3] = [5, 10, 15] print("a[5:] token punctuation">, a[5:]) # a[5:] = [30, 35, 40]      

Списки являются изменяемым типом, т.е. значения его элементов можно изменить:

 a: list = [1,2,3]a[2] = 4print(a)# [1, 2, 4] a: list = [1,2,3] a[2] = 4 print(a) # [1, 2, 4]      

Кортежи

Так же как и список, кортеж (tuple) является упорядоченной последовательностью элементов. Вся разница заключается в том, что кортежи неизменяемы.

Кортежи используются для защиты данных от перезаписи и обычно работают быстрее, чем списки, т.к. их нельзя изменять.

Для создания кортежа нужно поместить внутрь круглых скобок элементы, разделённые запятой:

 t: tuple = (5,'program', 1+3j)# Мы можем использовать оператор извлечения среза []# для извлечения элементов, но мы не можем менять их значения:print("t[1] block-code__original-line"># t[1] = programprint("t[0:3] block-code__original-line"># t[0:3] = (5, 'program', (1+3j)) t: tuple = (5,'program', 1+3j) # Мы можем использовать оператор извлечения среза [] # для извлечения элементов, но мы не можем менять их значения: print("t[1] token punctuation">, t[1]) # t[1] = program print("t[0:3] token punctuation">, t[0:3]) # t[0:3] = (5, 'program', (1+3j))      

Строки

Строка представляет собой последовательность символов. Мы можем использовать одинарные или двойные кавычки для создания строки. Многострочные строки можно обозначить тройными кавычками, »’ или «»»:

 s1: str = "Простая строка"s2: str = '''многострочная строка''' s1: str = "Простая строка" s2: str = '''многострочная строка'''      

Как и в случае со списками и кортежами, мы можем использовать оператор [] и со строками. Стоит отметить, что строки в Python относятся к категории неизменяемых последовательностей, то есть все функции и методы могут лишь создавать новую строку.

Множества

Множество является неупорядоченной уникализированной последовательностью. Объявляется множество с помощью элементов, разделённых запятой, внутри фигурных скобок:

 a: set = # вывод переменной множестваprint("a block-code__original-line"># a = a: set = 5,2,3,1,4> # вывод переменной множества print("a token punctuation">, a) # a =     

Над множествами можно выполнять такие операции, как объединение и пересечение. Т.к. элементы в множестве должны быть уникальны, они автоматически удаляют дубликаты:

 a: set = print("a block-code__original-line"># a = a: set = 1,2,2,3,3,3> print("a token punctuation">, a) # a =     

Поскольку множество является неупорядоченной последовательностью, оператор извлечения среза здесь не работает:

 a: set = print(a[1])Traceback (most recent call last): File "", line 1, in TypeError: 'set' object does not support indexing a: set = 1, 2, 3> print(a[1]) Traceback (most recent call last): File "", line 1, in module> TypeError: 'set' object does not support indexing     

Словари

Словари — неупорядоченные наборы пар ключ-значение.

Они используются, когда нужно сопоставить каждому из ключей значение и иметь возможность быстро получать доступ к значению, зная ключ. В других языках словари обычно называются map, hash или object. Словари оптимизированы для извлечения данных. Чтобы извлечь значение, нужно знать ключ.

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

 d: dict = print(type(d))# d: dict = 1:'value', 'key':2> print(type(d)) #     

Значение может быть любого типа, а вот ключ — только неизменяемого.

Мы используем ключ, чтобы получить соответствующее ему значение. Но не наоборот:

 d: dict = print("d[1] block-code__original-line"># d[1] = valueprint("d['key'] block-code__original-line"># d['key'] = 2print("d[2] block-code__highlight">d: dict = 1:'value', 'key':2> print("d[1] token punctuation">, d[1]) # d[1] = value print("d['key'] token punctuation">, d['key']) # d['key'] = 2 print("d[2] token punctuation">, d[2]) # Приводит к ошибке      

Преобразование типов данных

Мы можем преобразовывать значения из одного типа в другой с помощью таких функций, как int(), float(), str() и т.д. Для преобразования из/в строку должны использоваться совместимые значения:

 float(5) # 5.0int(10.6) # 10float('2.5') # 2.5str(25) # '25'int('1p')Traceback (most recent call last): File "", line 1, in ValueError: invalid literal for int() with base 10: '1p' float(5) # 5.0 int(10.6) # 10 float('2.5') # 2.5 str(25) # '25' int('1p') Traceback (most recent call last): File "", line 1, in module> ValueError: invalid literal for int() with base 10: '1p'      

Можно даже преобразовывать одну последовательность в другую:

 set([1,2,3]) # tuple() # (5, 6, 7)list('hello') # ['h', 'e', 'l', 'l', 'o'] set([1,2,3]) # tuple(5,6,7>) # (5, 6, 7) list('hello') # ['h', 'e', 'l', 'l', 'o']      

Для преобразования в словарь каждый элемент последовательности должен быть парой:

 dict([[1,2],[3,4]]) # dict([(3,26),(4,44)]) # dict([[1,2],[3,4]]) # dict([(3,26),(4,44)]) #     

Источник

ТИПЫ ДАННЫХ В PYTHON

Кроме того, к базовым типам также относятся логический тип и тип NoneType.

Числа

Тип данных Числа имеет в Python три вида:

Целые числа

Примеры записи целых десятичных чисел:

Двоичные числа записывают с префиксом 0b.

Примеры записи целых двоичных чисел:

Восьмиричные числа записывают с префиксом 0o.

Примеры записи целых восьмиричных чисел:

Шестнадцатиричные числа записывают с префиксом 0x.

Примеры записи целых шестнадцатиричных чисел:

Дробные числа

Дробные числа записываются с помощью точки, отделяющей целую часть от дробной.

Примеры записи дробных чисел:

Комплексные числа

Мнимая часть комплексного числа записывается с помощью постфикса j.

Примеры записи комплексных чисел:

Строки

Строки — это последовательности символов. Строки в Python записываются в кавычках. Можно использовать пару двойных кавычек или пару одинарных (апострофов).

Каждый символ в строке имеет свой индекс (номер). Нумерация начинается с нуля.

Списки

Списки — составной тип данных, состоящий из элементов, разделенных запятыми.

Элементы списка не обязательно должны быть одного типа. Элементом списка может быть даже другой список.

Списки в Python записываются в квадратных скобках. Каждый элемент в списке имеет свой индекс (номер). Нумерация начинается с нуля.

Кортежи

Кортежи очень похожи на списки, они состоят из элементов, разделенных запятыми.

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

Кортежи в Python записываются в круглых скобках. Каждый элемент в кортеже имеет свой индекс. Индексация начинается с нуля.

Следует обратить внимание на то, что в третьем примере, элементы списка, помещенного в кортеж, будут изменяемыми.

Множества

Множества являются неупорядоченным типом данных, который может хранить только уникальные значения. Все повторы автоматически удаляются.

Множества не поддерживают индексацию, то есть элементы множества не могут иметь индексов.

Множества удобны тем, что с ними можно выполнять операции объединения, пересечения, вычитания, сравнения (находить элементы множества, отсутствующие в другом множестве, или находить элементы множества, присутствующие в другом множестве).

Множества в Python записываются в фигурных скобках.

Элементами множества могут быть числа, строки, кортежи, но не могут быть списки, множества или словари.

Словари

Словари являются неупорядоченным типом данных и состоят из пар ключ-значение.

Используя ключи можно быстро получить значения из словаря (но не наоборот). Ключом может быть любой неизменяемый тип данных (число, строка, кортеж), а значением — любой тип данных.

Пары ключ, значение в словаре разделяются двоеточием и записываются через запятую.

Словари в Python записываются в фигурных скобках.

Ключи в словаре не должны повторяться. Если ключ повторится, то предыдущее значение из словаря будет удалено.

Логический тип

Логический тип (boolean) имеет два значения: истина (True) и ложь (False).

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

Тип NoneType

Тип NoneType в Python принимает значение None, которое идентично значению Null в других языках программирования.

Проверка типа

Узнать тип объекта можно с помощью функции type().

Создадим строковый объект и напечатаем его тип.

Проверить тип объекта можно с помощью функции isinstance(). Функция принимает два аргумента: имя объекта и название типа. Если тип объекта и название типа совпадают, то функция возвратит логическое значение True, если не совпадают, то возвратит False.

Создадим целочисленный объект и напечатаем результат, возвращаемый функцией isinstance().

a = 5 print(isinstance(a, int)) 
a = [5, 10, 20] print(isinstance(a, list)) 

Источник

Читайте также:  Php unserialize jquery serialized
Оцените статью