Python: Типы данных
Программы работают с разной информацией: текстом, числами, датами, списками, булевыми значениями. У каждого значения в программе есть тип.
Например:
- "Hello, World!" является строкой (
str) - 7, -198, 0 являются целыми числами (
int) - 3.14, -0.01, 1.0 являются рациональными числами (
float)
Что такое тип данных?
Тип данных определяет:
- какие значения к нему относятся;
- какие операции с ним можно делать.
Например, числа можно складывать, делить и умножать. А вот строки складываются по-другому: при помощи конкатенации. Умножать строку на строку бессмысленно и недопустимо:
# Нельзя: 'мама' * 'блокнот'Числа и строки относятся к разным типам
Пример вывода числа:
print(5) # => 5
print(-5) # => -5Пример вывода строки:
print('5') # => 5
print('-5') # => -5На экране результат выглядит одинаково, но внутри программы это совершенно разные вещи:
| Значение | Тип данных |
|---|---|
5 | int (целое число) |
'5' | str (строка) |
Строку '5' нельзя сложить с числом 5, как и '10' / 2 не даст числа 5.0. Python будет ругаться, если вы попытаетесь смешать несовместимые типы без явного преобразования.
Целые и рациональные числа
Python различает два вида чисел:
- int обозначает целые числа: -3, 0, 7, 100000
- float обозначает вещественные (рациональные) числа: 1.0, -3.14, 2.718
Пример:
print(10.234) # => 10.234
print(-0.4) # => -0.4В них можно записывать дробные значения и использовать их в вычислениях:
print(3.5 + 1.2) # => 4.7
print(5.0 / 2.0) # => 2.5
print(2.75 - 0.5) # => 2.25Примитивные типы
Типы вроде:
- str (строка),
- int (целое число),
- float (рациональное число)
называются примитивными: они встроены прямо в язык.
Примитивные типы Python
├── int : целые числа (7, -3, 0)
├── float : дробные числа (3.14, -0.5)
├── str : строки ('hello')
└── bool : логический тип (True, False)Кроме строк и чисел, в Python есть булев тип bool со значениями True и False, а также специальное значение None. Подробнее мы столкнемся с ними в будущем.
Существуют и составные типы: списки, словари, кортежи и другие. С ними мы познакомимся позже. Более того, в Python можно создавать и свои собственные типы (например, классы), но для начала важно хорошо разобраться с примитивами.
Задание
В программе уже задан текущий год:
current_year = 2026Напишите программу, которая выводит данные профиля в таком формате:
Name: Anna
Birth year: 1994
Age: 32
Rating: 4.7Для этого:
- создайте переменную с годом рождения;
- вычислите возраст на основе текущего года;
- выведите данные на экран с подписями слева.
Полезное
Python: Типы данных
Программы работают с разной информацией: текстом, числами, датами, списками, булевыми значениями. У каждого значения в программе есть тип.
Например:
- "Hello, World!" является строкой (
str) - 7, -198, 0 являются целыми числами (
int) - 3.14, -0.01, 1.0 являются рациональными числами (
float)
Что такое тип данных?
Тип данных определяет:
- какие значения к нему относятся;
- какие операции с ним можно делать.
Например, числа можно складывать, делить и умножать. А вот строки складываются по-другому: при помощи конкатенации. Умножать строку на строку бессмысленно и недопустимо:
# Нельзя: 'мама' * 'блокнот'Числа и строки относятся к разным типам
Пример вывода числа:
print(5) # => 5
print(-5) # => -5Пример вывода строки:
print('5') # => 5
print('-5') # => -5На экране результат выглядит одинаково, но внутри программы это совершенно разные вещи:
| Значение | Тип данных |
|---|---|
5 | int (целое число) |
'5' | str (строка) |
Строку '5' нельзя сложить с числом 5, как и '10' / 2 не даст числа 5.0. Python будет ругаться, если вы попытаетесь смешать несовместимые типы без явного преобразования.
Целые и рациональные числа
Python различает два вида чисел:
- int обозначает целые числа: -3, 0, 7, 100000
- float обозначает вещественные (рациональные) числа: 1.0, -3.14, 2.718
Пример:
print(10.234) # => 10.234
print(-0.4) # => -0.4В них можно записывать дробные значения и использовать их в вычислениях:
print(3.5 + 1.2) # => 4.7
print(5.0 / 2.0) # => 2.5
print(2.75 - 0.5) # => 2.25Примитивные типы
Типы вроде:
- str (строка),
- int (целое число),
- float (рациональное число)
называются примитивными: они встроены прямо в язык.
Примитивные типы Python
├── int : целые числа (7, -3, 0)
├── float : дробные числа (3.14, -0.5)
├── str : строки ('hello')
└── bool : логический тип (True, False)Кроме строк и чисел, в Python есть булев тип bool со значениями True и False, а также специальное значение None. Подробнее мы столкнемся с ними в будущем.
Существуют и составные типы: списки, словари, кортежи и другие. С ними мы познакомимся позже. Более того, в Python можно создавать и свои собственные типы (например, классы), но для начала важно хорошо разобраться с примитивами.
Задание
В программе уже задан текущий год:
current_year = 2026Напишите программу, которая выводит данные профиля в таком формате:
Name: Anna
Birth year: 1994
Age: 32
Rating: 4.7Для этого:
- создайте переменную с годом рождения;
- вычислите возраст на основе текущего года;
- выведите данные на экран с подписями слева.
Полезное
Ваше упражнение проверяется по этим тестам
import importlib
def test(capsys):
expected = """Name: Anna
Birth year: 1994
Age: 32
Rating: 4.7"""
expect_output(capsys, expected)
def expect_output(capsys, expected):
importlib.import_module('solution')
out, _err = capsys.readouterr()
actual = out.strip('\n')
with capsys.disabled():
print('\n')
print(out)
assert actual == expectedРешение учителя откроется через:
20:00
