В python различают следующие типы данных (точнее - классы объектов):
1. NoneType - неопределенное значение. Пример кода см. на рис.1.
2. Числовые типы.
- int - целочисленный тип: 1; 44; 90 и т.п.
Пример кода создания переменной.
pos_min = 1
Конструктор для приведения значения к типу целого числа - int().
v = '1' # тип текстовый - str
b = int(v)+1 # принудительно переводим в числовой тип int и прибавляем 1
print(v, type(v), b, type(b)) # выводим на экран, что получилось
Результат: 1 <class 'str'> 2 <class 'int'>
Зачем использовать функцию - конструктор?
Допустим, вы извлекаете данные с сайта или документа docx (word) и числа представлены в виде текста, а с ними необходимо выполнить арифметические действия: что-то посчитать. Поэтому прежде их необходимо перевести в соответствующий тип данных.
- float - вещественные числа (или с плавающей точкой): 2,34; 9,89; 4,1;
Пример.
pt_min = 2.34
Конструктор для приведения значения к указанному типу - float().
v = '1.23' # тип текстовый - str
b = float(v)+1 # принудительно переводим в вещественный тип float и прибавляем 1
print(v, type(v), b, type(b))
Результат: 1.23 <class 'str'> 2.23 <class 'float'>
Пример.
num_complex = 1+2j
или через конструктор - complex()
num_complex = complex(1,2)
3. Логический тип данных bool, который может принимать значения True (истина) или False (ложь). Является подтипом int.
Пример.
italic = True
bold = False
4. Текстовый тип данных str для работы с символами.
Пример.
info_tag = 'warning'
header = "welcome"
Конструктор для приведения значения к типу текст - str().
result = 23.4
print(f'Результат вычисления - {str(result)}')
Результат: Результат вычисления - 23.4
5. Список (list) - автоматически масштабируемая (расширяемая и сужаемая) структура для хранения простых (числа, текст и пр.) и сложных данных (словари, множества, списки и пр.).
Особенности списков:
- элементы списка не обязательно должны быть одного типа;
- в отличие от кортежа списки - это изменяемый тип данных;
- в памяти занимают больше места, чем кортежи;
- не могут быть ключом для словаря.
Пример.
heap = [123,321,'ааа',4.34]
Конструктор для приведения значения к типу список - list().
6. Кортеж (tuple) - тип данных похожий на список (list), который имеет следующие отличия:
- не изменяется после создания (объявления);
- в памяти занимает меньше места, чем список;
- может быть ключом для словаря (dict).
Пример.
tpl = (123,321,'ааа',4.34)
Конструктор для приведения значения к типу кортеж - tuple().
7. Range - это неизменяемый тип, который предназначен для хранения последовательности чисел, созданных через функцию range().
Функция range генерирует ряд чисел и имеет формат range(начальное число, конечное число, шаг). Результат хранится в объекте класса range.
n = range(1,10,2)
print(*n, type(n))
Результат: 1 3 5 7 9 <class 'range'>
Другой пример.
n = range(10)
print(*n, type(n))
Результат: 0 1 2 3 4 5 6 7 8 9 <class 'range'>
Знак * используется в функции print для распаковки данных из объекта range, чтобы показать содержимое.
Объект range часто используется в циклах для генерации ряда чисел.
8. Множество - это неупорядоченный набор данных, которые не имеют дубликатов. Когда нам важно содержание, но не порядок. Похожи на множества в математике.
Множества включают в себя изменяемые и неизменяемые множества.
8.1. Изменяемые множества (set)
Пример 1.
st = {89,67,5,5,123}
print(st)
Результат: {123, 89, 67, 5}
Т.е. изначально заданный порядок нам не гарантируется!
Пример 2.
a = set('mnozhestvoo')
print(a)
Результат: {'t', 'm', 'h', 'e', 'o', 's', 'v', 'n', 'z'}
Конструктор для приведения значения к типу - set().
8.2. Неизменяемые множества (frozenset).
Конструктор для приведения значения к типу - frozenset().
9. Словарь (dict) . Структура данных в формате "ключ" - "значение". Подробнее - здесь.
Конструктор для приведения значения к типу словарь - dict().
Каждый тип данных имеет свои цели и особенности использования, но этому будут посвящены отдельные материалы на нашем канале.
Как определить тип объекта в python?
Чтобы проверить, к какому типу (а для python точнее сказать - к какому классу) относится объект, вы всегда можете использовать встроенную функцию type(имя_объекта_для_проверки):
italic = True
print(type(italic))
Результат: <class 'bool'>
Как проверить тип объекта в коде?
В коде проверить тип (отнесение к классу) объекта можно через функцию isintance(имя_объекта, класс):
italic = True
if isinstance(italic, bool):
print('boolean')
else:
print(type(italic))
Результат: boolean
Обратите внимание: имя класса указывается без кавычек: bool, str, int, float и т.п.
Пожалуйста, поддержите канал подпиской или лайком.
Это будет стимулом для нас работать лучше.
#технологии #типыданных# типыданных #питон #python #python3 #pythonснуля #урокиpython #программированиенаpython