Найти в Дзене

Python. Основные типы данных. (5)

Для того чтобы увидеть к какому типу принадлежит объект я присваиваю переменной а тот тип объекта, о котором идет речь, и передаю переменную а функции type(). Функция type() возвращает тип к которому принадлежит объект присвоенный переменной а

1. Числа,

В Python есть три вида чисел:

1.1 целые (int).

>>>a = 1

>>>type(a)

<class 'int'>

1.2 вещественные (float). Это числа содержащие дробную часть, еще одно их название - числа с плавающей точкой.

>>>a = 1.0

>>>type(1.0)

<class 'float'>

1.3 комплексные (complex). Числа содержащие мнимую часть.

>>>a = 1 + 1j

>>>type(1+1j)

<class 'complex'>

2. Строки (str) – упорядоченная последовательность любых символов начинающаяся и заканчивающаяся или одинарной кавычкой (апострофом)(‘) или двойной кавычкой(“).

Одинарная кавычка:

>>>a = '12ffDDD&*^%$'

>>>type(a)

<class 'str'>

Двойная кавычка:

>>>a = "12ffDDD&*^%$"

>>>type(a)

<class 'str'>

Так же строки могут начинаться и заканчиваться тремя подряд одинарными кавычками (‘ ’ ’) или тремя подряд двойными кавычками(“ ” ”), с помощью такого приема удобно писать многострочные строки.

>>>a = """12ffDDD&*^%$

1wsd45643444"""

>>>type(a)

<class 'str'>

>>>a = ' ' '12ffDDD&*^%$

1wsd45643444' ' '

>>>type(a)

<class 'str'>

3. Списки (list) - упорядоченная коллекция элементов, начинающаяся с левой квадратной скобкой([) и заканчивающееся правой квадратной скобкой(]). Элементы списка разделяются запятыми.

>>>a = [1, '2', "fgg", ['f', 5], '@']

>>>type(a)

<class 'list'>

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

4. Кортежи (tuple) - упорядоченная коллекция элементов, начинающаяся с левой скобки(() и заканчивающаяся правой скобкой()). Элементы кортежа разделяются запятыми. Кортеж отличаются от списка тем что они являются неизменяемыми ну и формой скобок.

>>>a = (5, 6, '7', 're', ['err', 4], ('fgg', 6))

>>>type(a)

<class 'tuple'>

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

При задании кортежа из одного элемента, после элемента нужно поставить запятую

>>>a = (2,)

>>>type(a)

<class 'tuple'>

Если запятой не поставить, то кортежа не получится.

>>>a = (2)

>>>type(a)

<class 'int'>

5. Словари (dict) – неупорядоченная коллекция пар объектов с доступом по ключу. Словари состоят из пар ключ(key) : значение (value). Между ключом и значением стоит двоеточие(:), пары ключ:значение разделяются запятой. Объектами в словаре могут быть данные любого типа. Словари начинаются с левой фигурной скобки({) и заканчиваются правой фигурной скобкой скобкой(}),Пары словаря разделяются запятыми

>>>a = {'3': 4, 'erty': (2,), 7: ['f', 5, {'r':4}]}

>>>type(a)

<class 'dict'>

Ключами в словаре не могут быть изменяемые типы данных (словари и списки)

>>>a = {'3': 4, 'erty': (2,), ['f', 5, {'r':4}]: 7}

Traceback (most recent call last):

Python Shell, prompt 9, line 1

builtins.TypeError: unhashable type: 'list'

6. Множества (set) – неупорядоченная коллекция уникальных (неповторяющихся) объектов начинающаяся с левой фигурной скобки({) и заканчиваются правой фигурной скобкой скобкой(}). Хотя сами множества являются изменяемыми их элементами могут быть только неизменяемыми.

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

>>>a = {4, 'fggg', ('fdf', 5, 7)}

>>>type(a)

<class 'set'>

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

>>>a = {4, ['fggg'], ('fdf', 5, 7)}

Traceback (most recent call last):

Python Shell, prompt 5, line 1

builtins.TypeError: unhashable type: 'list'

>>>a = {4, 'fggg', {'fdf', 5, 7}}

Traceback (most recent call last):

Python Shell, prompt 6, line 1

builtins.TypeError: unhashable type: 'set'

>>>a = {4, {'fggg': 5}, ('fdf', 5, 7)}

Traceback (most recent call last):

Python Shell, prompt 7, line 1

builtins.TypeError: unhashable type: 'dict'

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

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

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

Числа – неизменяемые;

Строки (str) – неизменяемые упорядоченные;

Списки (list) – изменяемые упорядоченные;

Кортежи(tuple) – неизменяемые упорядоченные;

Словари (dict) – изменяемые неупорядоченные;

Множества (set) – изменяемые неупорядоченные.

Это все, что я вычитал о типах данных.

Уважаемые коллеги если вы нашли ошибку или неточность (в том числе грамматическую) в моем конспекте прошу вас написать о ней в комментариях.

По ссылкам можно почитать мои конспекты:

Книги и курсы по Python
Книги и курсы по Python год спустя.
Встроенные функции (Built-in)
Методы словаря (Dict methods)
Методы списков (List methods)
Строковые методы (String Methods)
Библиотека os
Спецификаторы
Итерируемый тип данных
Инструкции continue, break и pass
Цикл for … in
Цикл while
Условная инструкция if
Индексация
Переменные
Встроенные функции print() и input()
Оператор присваивания
Основные типы данных
Утилита PIP
Коротко о языке