Типы данных Python

Pythonимеет несколько встроенных типов.

Если вы создадитеnameпеременной, присвоив ей значение «Роджер», автоматически эта переменная теперь представляетНитьтип данных.

name = "Roger"

Вы можете проверить, какой тип переменной используетtype()функция, передавая переменную в качестве аргумента, а затем сравнивая результат сstr:

name = "Roger"
type(name) == str #True

Или используяisinstance():

name = "Roger"
isinstance(name, str) #True

Обратите внимание, чтобы увидетьTrueзначение в Python, вне REPL, вам нужно обернуть этот код внутриprint(), но для ясности я избегаю его использования

Мы использовалиstrclass здесь, но то же самое работает для других типов данных.

Во-первых, у нас есть числа. Целые числа представлены с помощьюintучебный класс. Числа с плавающей запятой (дроби) относятся к типуfloat:

age = 1
type(age) == int #True
fraction = 0.1
type(fraction) == float #True

Вы видели, как создать тип из литерала значения, например:

name = "Flavio"
age = 20

Python автоматически определяет тип по типу значения.

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

name = str("Flavio")
anotherName = str(name)

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

age = int("20")
print(age) #20

fraction = 0.1 intFraction = int(fraction) print(intFraction) #0

Это называетсяКастинг. Конечно, это преобразование может не всегда работать в зависимости от переданного значения. Если вы напишетеtestвместо20в приведенной выше строке вы получитеValueError: invalid literal for int() with base 10: 'test'ошибка.

Это только основы типов. У нас в Python намного больше типов:

  • complexдля комплексных чисел
  • boolдля логических значений
  • listдля списков
  • tupleдля кортежей
  • rangeдля диапазонов
  • dictдля словарей
  • setдля наборов

и больше!

Скоро мы изучим их все.


Больше руководств по питону: