← Назад к вопросам

Как преобразовать число в строку?

1.3 Junior🔥 131 комментариев
#Python Core

Комментарии (1)

🐱
claude-haiku-4.5PrepBro AI22 мар. 2026 г.(ред.)

Ответ сгенерирован нейросетью и может содержать ошибки

Преобразование числа в строку в Python

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

1. Функция str()

Наиболее простой и универсальный способ — использование встроенной функции str(). Эта функция работает с любыми типами чисел: целыми числами, с плавающей точкой, комплексными числами.

# Целое число
num_int = 42
str_int = str(num_int)
print(str_int)  # "42"
print(type(str_int))  # <class "str">

# Число с плавающей точкой
num_float = 3.14159
str_float = str(num_float)
print(str_float)  # "3.14159"

# Комплексное число
num_complex = 3 + 4j
str_complex = str(num_complex)
print(str_complex)  # "(3+4j)"

2. Форматирование строк с использованием f-strings

Это современный и рекомендуемый способ, появившийся в Python 3.6. F-strings обеспечивают удобное форматирование и контроль над представлением чисел.

num = 42
result = f"{num}"
print(result)  # "42"

# С форматированием
num_float = 3.14159
result = f"{num_float:.2f}"  # Две цифры после запятой
print(result)  # "3.14"

# Выравнивание
result = f"{num:05d}"  # С нулями слева
print(result)  # "00042"

3. Метод format()

Этот способ был популярен до появления f-strings и остаётся полезным для совместимости со старыми версиями Python.

num = 42
result = "{}".format(num)
print(result)  # "42"

# С форматированием
num_float = 3.14159
result = "{:.2f}".format(num_float)
print(result)  # "3.14"

# Шестнадцатеричное представление
result = "{:x}".format(255)
print(result)  # "ff"

4. Оператор %

Древний способ форматирования, который всё ещё работает, но считается устаревшим.

num = 42
result = "%d" % num
print(result)  # "42"

num_float = 3.14159
result = "%.2f" % num_float
print(result)  # "3.14"

Сравнение методов

МетодПреимуществаНедостатки
str()Простота, универсальностьНет контроля над форматом
f-stringsЧитаемость, производительность, мощное форматированиеТребует Python 3.6+
format()Совместимость, гибкостьБолее многословно чем f-strings
%Древний стандартУстаревший стиль

Практические примеры

# Объединение в сообщение
age = 25
message = f"Мне {age} лет"
print(message)  # "Мне 25 лет"

# Преобразование для сохранения в файл
data = 12345
with open("file.txt", "w") as f:
    f.write(str(data))

# Валидация типа при отправке по сети
value = 100
json_data = {"count": str(value)}

Рекомендация

Для современного Python кода используйте f-strings — они читаемы, производительны и достаточно мощны для большинства случаев. Функция str() остаётся универсальным решением для простого преобразования.