Рубрики
Без рубрики

Типы данных Python | Изменяемые и неизменяемые типы данных

Типы данных в Python-это классификация, которая определяет, какой тип значения имеет переменная и какой тип математических, логических операций может быть применен.

Автор оригинала: Team Python Pool.

Типы данных Python | Изменяемые и неизменяемые типы данных

Тип данных в Python или в любом другом языке программирования-это классификация, которая определяет, какой тип значения имеет переменная и какой тип математических, реляционных или логических операций может быть применен к ней без возникновения ошибки. Например, string и int-это типы данных Python, которые используются для классификации текста, а integer-это тип данных, используемый для классификации целых чисел.

Типы данных Python: Обзор

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

Классификации типов данных в Python

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

  • Изменяемые типы данных: типы данных в python, где значение, присвоенное переменной, может быть изменено
  • Неизменяемые типы данных: типы данных в python, где значение, присвоенное переменной, не может быть изменено

Изменяемые и неизменяемые объекты

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

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

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

Неизменяемые типы данных в Python1. Числовой2. Строка3. Кортеж

Изменяемые типы данных в Python1. Список 2. Словарь3. Набор

Настройка типа данных в Python

В Python тип данных задается при присвоении значения переменной:

Пример Данные сложный
x = [“яблоко”, “банан”, “вишня”] список
x = (“яблоко”, “банан”, “вишня”) диапазон
x = {“имя” : “Джон”, “возраст” : 36} диктант
x = {“яблоко”, “банан”, “вишня”} memoryview

Числовые типы данных в Python

При программировании, если вы говорите, что переменная имеет числовое значение, вы неоднозначны. Это происходит потому, что числа могут быть либо целыми числами, либо плавающими точками (плавающими точками)

Python имеет много полезных встроенных типов данных. Переменные Python могут хранить различные типы данных в зависимости от типа данных переменной.

Решателям задач полезно понять несколько основных типов данных Python, чтобы написать хорошо сконструированный код.

Python поддерживает четыре различных числовых типа: целые числа, длинные, плавающие и комплексные числа. Кроме того, булевы являются подтипом простых целых чисел. Целые числа или int-это положительные или отрицательные целые числа без десятичной точки. Длинные целые числа имеют неограниченную точность, а float представляют собой действительные числа и записываются с десятичной точкой, разделяющей целые и дробные части. Комплексные числа имеют действительную и мнимую части, a + bc, где a-действительная часть, а b-мнимая.

Язык программирования Python предоставляет четыре числовых типа данных. Они заключаются в следующем.

  • int – Все числа без дробной части (Пример – 10). Для int нет верхнего предела.
  • float – Все числа с дробной частью (Пример – 10.5). Он точен до 15 знаков после запятой
  • комплекс – Все числа с действительной и мнимой частями (Пример – 5 + 10j).
  • bool – логические значения True и False.

Целые Типы данных

  • int – Целые числа со знаком
  • long – Длинные целые числа для представления более высоких значений

Как и в математике, целые числа в компьютерном программировании-это целые числа, которые могут быть положительными, отрицательными или 0 (…, -1, 0, 1, …). Целое число также может быть известно как int. Как и в других языках программирования, вы не должны использовать запятые в числах из четырех цифр или более, поэтому, когда вы пишете 1000 в своей программе, запишите ее как 1000.

Мы можем вывести целое число таким простым способом:

print(-25)

Выход

-25

Мы также можем делать математику с целыми числами в Python:

Выход:

48

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

Типы данных Чисел с плавающей Запятой

Тип данных float используется для представления десятичных значений.

Это значение представлено классом float. Это вещественное число с плавающей точкой. Он задается десятичной точкой. Необязательно, символ e или E, за которым следует положительное или отрицательное целое число, может быть добавлен для указания научной нотации.

>>>.2
>>> type(c)

>>> d = -0.03
>>> type(d)

>>>.02e23
>>> e
6.02e+23
>>> type(e)

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

>>>     # no decimal point
>>> type(g)

>>>.    # decimal point
>>> type(g)

Типы данных комплексных чисел

Комплексные числа задаются как <код><действительная часть>+<мнимая часть>j.

Например:

>>> 2+3j
(2+3j)
>>> type(2+3j)

Логические Типы Данных

Логическое значение-это такой тип данных, который есть почти в каждом языке программирования, как и Python. Boolean в Python может иметь два значения – Правда или Ложь. Эти значения можно использовать для присвоения и сравнения.

Логические типы данных похожи на монету. В какой-то момент мы либо находили голову, либо хвост, так что Логическое значение либо возвращало True, либо False. Есть две константы, true и false, эти константы используются для присвоения значения логическому типу данных.

Пример 1 Логический Тип данных:

Выход:

False
True

Пример 2 Логический Тип данных:

print(True+False+True)

Выход:

2

Примечание: Python обрабатывает Истинное значение как 1, а Ложное-как 0. Таким образом, приведенный выше пример возвращает 2(1+0+1).

Пример 3 Логический Тип данных:

print (bool(True));  
print (bool(False));  
print (bool(0));  
print (bool());  
print (bool(3))  
print (bool("Pankaj"));  
print (bool(""));  
print (bool(' '));  
print (bool(True+True));  
print (bool(False+False));  
print (bool(True+False));  
print (bool(None)); 

Выход:

True
False
False
False
True
True
False 
True 
True
False 
True
False

Строковый тип данных в Python

Строки - это неизменяемая коллекция символов. В Python строки могут хранить текстовые символы или произвольную коллекцию байтов (содержимое файла изображений). В python строковые объекты хранятся в последовательности. Последовательности поддерживают порядок слева направо среди элементов и хранятся и извлекаются по их относительному положению.В Python очень легко создавать объекты strings, любые символы, заключенные в кавычки, становятся строковыми (кавычки могут быть '(одинарными) или "(двойными)).

Строка в Python-это неизменяемая и упорядоченная последовательность элементов. Они могут быть определены с помощью одинарных кавычек (') или двойных кавычек ("). Строка, охватывающая несколько строк, может быть определена с помощью тройных одинарных кавычек ("') или тройных двойных кавычек ("""). Например:

>>>
>>> type(my_var)

>>> isinstance(my_var, str)
True

>>>"This is
... my
... first
... string"""
>>> print(my_string)
This is
my
first
string
>>>'
... This
... is
... my
... second
... string
... '''
>>> print(my_string_2)

This
is
my
second
string

Поскольку строки в Python упорядочены, мы можем извлекать отдельные символы из строки, используя их целочисленные индексы, начиная с 0. Первая буква строки всегда находится в позиции 0, и после этого позиции численно увеличиваются. Например:

>>>
>>> my_var[0]
'T'
>>> my_var[10]
's'

Строки в Python также поддерживают slicing. Нарезка-это метод, который используется для извлечения части переменной с использованием обозначения [start_position:end_position], где start_position и end_position - целые числа, указывающие длину среза. Если start_position опущен, то нарезка начинается в начале строки, а если end_position опущен, то нарезка заканчивается в конце строки. Например:

>>> my_var[0:1]
'T'
>>> my_var[0:]
'This is a string'
>>> my_var[:-1]
'This is a strin'
>>> my_var[:len(my_var)]
'This is a string' 

Типы данных кортежей в Python

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

Пример – Код Python для иллюстрации "кортежа" в Python

roll_list = (1,2,3,4,5)
print(roll_list)
student = (1,'Rama',"3rd Year",86.5)
print(student)
print(type(student))
first = (1, 2, 3)
second = (4, 5, 6)

print("len(first) : ", len(first))
print("max(first) : ", max(first))
print("min(first) : ", min(first))
print("first + second :", first + second)
print("first * 3 : ", first * 3)
print("1 in first : ", 1 in first)
print("5 not in second : ", 5 not in second)

Выход:

len(first) :  3
max(first) :  3
min(first) :  1
first + second : (1, 2, 3, 4, 5, 6)
first * 3 :  (1, 2, 3, 1, 2, 3, 1, 2, 3)
1 in first :  True
5 not in second :  False

В этом примере показано несколько основных операций с кортежами. Функция len() возвращает количество элементов в первом кортеже. Функция max() возвращает максимальное значение, а функция min() - минимальное. Оператор сложения добавляет два кортежа, оператор умножения умножает кортеж. Оператор in определяет, находится ли значение в кортеже.

Список типов данных в Python

Список является одним из наиболее часто используемых в Python для обхода элементов. Он используется вместе с кортежами, словарями и наборами. Список-это набор элементов/данных, которые упорядочены и могут быть изменены при необходимости. Он также позволяет дублировать записи в наборе данных. Во-первых, нам нужно понять функциональность списка и его характеристики. Используя список, мы можем выполнять множество операций, таких как добавление, нарезка, добавление и удаление элементов, индексация и т. Д. Ниже приведены некоторые функции списков в Python.

A = [ ] # This is a blank list variable
B = [1, 23, 45, 67] # this list creates an initial list of 4 numbers.
C = [2, 4, 'john'] # lists can contain different variable types.

Все списки в Python индексируются на нулевой основе. При ссылке на элемент или длину списка количество элементов списка всегда равно показанному числу плюс один.

mylist = ['Rhino', 'Grasshopper', 'Flamingo', 'Bongo'](mylist) # This will return the length of the list which is 3. The index is 0, 1, 2, 3.
print(mylist[1]) # This will return the value at index 1, which is 'Grasshopper'
print(mylist[0:2]) # This will return the first 3 elements in the list.

Выход:

Grasshopper
['Rhino', 'Grasshopper']

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

mylist = [0, 1, 2, 3]
print mylist[1]

Допускаются также многомерные списки. Хотя большинство людей не могут постичь больше трех - четырех измерений. Вы можете объявить несколько измерений, разделив a запятыми. В следующем примере изменяемая переменная представляет собой двумерный массив:

MyTable = [[], []]

В двумерном href="https://en.wikipedia.org/wiki/Array_data_structure">array, первое число-это всегда количество строк; второе число-это количество столбцов. href="https://en.wikipedia.org/wiki/Array_data_structure">array, первое число-это всегда количество строк; второе число-это количество столбцов.

Чем Тип Данных Кортежа Отличается От Типа Данных Списка?

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

Словарные типы данных в Python

Словари в Python-это списки пар Ключ: Значение. Это очень мощный тип данных для хранения большого количества связанной информации, которая может быть связана с помощью ключей . Основная операция словаря заключается в извлечении значения на основе имени ключа . В отличие от списков, где используются индексные номера, словари позволяют использовать ключ для доступа к его членам. Словари также можно использовать для сортировки, итерации и сравнения данных.

Словари создаются с помощью фигурных скобок ({}) с парами, разделенными запятой (,), и ключевыми значениями, связанными с двоеточием(:). В словарях Ключ должен быть уникальным. Вот краткий пример того, как можно использовать словари:

>>> d = {1:'value','key':2}
>>> type(d)

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

d = {1:'value','key':2}
print(type(d))
d['key']d[2] = ", d[2]);

Обязательно прочтите: Реализация стека в Python

Набор типов данных в Python

В Python набор-это набор неупорядоченных и неиндексированных элементов данных различных типов. В Python элементы набора типов данных являются неизменяемыми (дубликаты не допускаются). Однако само множество изменчиво. Наборы создаются с помощью фигурных скобок. Давайте рассмотрим код для иллюстрации набора в Python.

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

# Set Example
myset = {"hi", 2, "bye", "Hello World"}

# loop through set
for a in myset:
    print(a)

# checking whether 2 exists in myset
print(2 in myset)

# adding new element
myset.add(99)
print(myset)

Далее мы вводим некоторые другие операции для задания типов данных

Метод add() добавляет элемент в набор. Элемент remove() удаляет элемент из набора. Метод clear() удаляет все элементы из набора. set1 является надмножеством set2, если каждый элемент в set2 также находится в set1. set1 является подмножеством set2, если каждый элемент в set1 также находится в set2.

set([1, 2, 3, 4])
set([1, 2, 3, 4, 6, 7])
Is set1 subset of set2 ? :  True
Is set1 superset of set2 ? :  False
set([])

Если нам нужен неизменяемый набор, мы можем создать замороженный набор с помощью функции frozenset().

Эта строка создает замороженный набор из списка.

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

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

Целые Числа В Тип Данных Floats И Наоборот

Целые числа и поплавки-это типы данных, которые имеют дело с числами.

Чтобы преобразовать целое число в float, используйте функцию float() в Python. Аналогично, если вы хотите преобразовать float в целое число, вы можете использовать функцию int().

Пример 1 int to float Тип данных:

Выход:

5.0

Пример 2 int to float Тип данных и наоборот:

Выход:

5
5.3

Приведение различных типов данных к Сложному типу данных

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

Приведение типа данных int к сложному

>>> print(complex(1))
(1+0j)

Приведение типа данных float к комплексному

>>> print(complex(1.0))
(1+0j)

Вывод

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

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

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

Если у вас есть какие-либо сомнения, сообщите нам об этом в разделе комментариев ниже.

Счастливого кодирования!