Печать целочисленных значений в Python: практическое руководство

Раздел: Встроенные функции -> Вывод числовых значений

Основные способы вывода целых чисел

Для вывода целого числа в Python используется функция print(). Она принимает один или несколько аргументов, преобразует их в строку и выводит в стандартный поток вывода.

print(42)

Python print float (вывод вещественного числа в python)

42

Python print integer (вывод целого числа в python)

Функция print автоматически вызывает str() для каждого переданного объекта. Для целых чисел это даёт десятичное представление. Данный способ подходит для простого вывода, когда не требуется особое форматирование.

Как вывести несколько целых чисел в одной строке?

Функция print() принимает произвольное количество аргументов. По умолчанию они разделяются пробелом.

print(10, 20, 30)
10 20 30

Если требуется изменить разделитель, используется параметр sep. Например, sep=',' выведет числа через запятую. Ошибка: при передаче нечисловых объектов print также вызовет str(), что может привести к неожиданному формату.

Как вывести целое число без перевода строки в конце?

Параметр end определяет символ, добавляемый после вывода. По умолчанию это \n. Замена на пустую строку убирает переход на новую строку.

print(1, end='')
print(2, end='')
12

Частая ошибка: забыть указать end или указать неверный тип (например, число вместо строки). end должен быть строкой.

Как вывести целое число с заданной шириной и ведущими нулями?

Для форматирования числа до определённой ширины с заполнением нулями слева используется спецификатор формата. В f-строках: f'{value:05d}'. Здесь 5 общая ширина, d целое десятичное, 0 заполнитель.

n = 7
print(f'{n:03d}')
print(format(n, '05d'))
007
00007

Ошибка: если ширина меньше реального количества цифр, число выводится полностью без обрезания. Неверный спецификатор (например, :s для целого) вызовет ValueError.

Как вывести целое число в двоичном, восьмеричном или шестнадцатеричном виде?

В Python встроенные функции bin(), oct(), hex() возвращают строку с префиксом. Для вывода без префикса используются f-строки с форматами b, o, x (строчные) или X (заглавные).

x = 255
print(bin(x))
print(f'{x:b}')
print(f'{x:#x}')
0b11111111
11111111
0xff

Проблема: при передаче в bin() нецелого числа возникает TypeError. Для отрицательных чисел представление включает знак минус. В f-строках можно управлять шириной: f'{x:08b}'.

Как вывести целое число с разделителями тысяч?

В f-строках и методе format() можно использовать запятую , в качестве разделителя тысяч: f'{x:,}'. Альтернативно символ подчёркивания _ (PEP 515) работает с Python 3.6+.

n = 1000000
print(f'{n:,}')
print(f'{n:_}')
1,000,000
1_000_000

Разделитель запятой не работает с плавающими числами? Работает, но для целых. При использовании _ символ подчёркивания, а не пробел. В некоторых локалях запятая может быть не принята; в таких случаях лучше использовать _.

Как вывести целое число вместе с пояснительным текстом?

Самый наглядный способ - f-строки: print(f'Значение: {value}'). Также можно использовать конкатенацию, но требуется явное преобразование числа в строку через str().

age = 25
print('Возраст: ' + str(age))
print(f'Возраст: {age}')
Возраст: 25
Возраст: 25

Типичная ошибка при конкатенации: print('Возраст: ' + age) вызывает TypeError, так как нельзя складывать строку и число. Использование str() решает проблему. f-строки работают быстрее и читаются легче.

Как вывести целое число с явным указанием знака?

Спецификатор + перед d выводит знак для положительных чисел: f'{x:+d}'. Пробел оставляет место для знака у положительных чисел.

print(f'{42:+d}')
print(f'{-5:+d}')
print(f'{42: d}')
+42
-5
 42

Если число равно нулю, знак также будет выведен (например, +0). Для подавления знака у нуля используйте условное форматирование.

Как вывести целые числа из списка или кортежа?

С помощью распаковки через оператор * можно передать элементы списка как отдельные аргументы print(): print(*lst). Для вывода в столбик используется sep='\n' или '\n'.join().

nums = [1, 2, 3]
print(*nums)
print(*nums, sep='\n')
1 2 3
1
2
3

Ошибка: если список содержит не строки, join потребует преобразования в строки, например '\n'.join(map(str, nums)).

Расширенные примеры вывода целых чисел

Пример 1: Комбинация всех форматов для числа 123456789

Пример
x = 123456789
print(f'Десятичное: {x}')
print(f'Двоичное: {x:b}')
print(f'Восьмеричное: {x:o}')
print(f'Шестнадцатеричное: {x:X}')
print(f'С разделителями тысяч: {x:,}')
print(f'С ведущими нулями шириной 12: {x:012d}')
print(f'Со знаком: {x:+d}')
print(f'Выравнивание влево: {x:<15}')
print(f'Выравнивание по центру: {x:^15}')
Десятичное: 123456789
Двоичное: 111010110111100110100010101
Восьмеричное: 726746425
Шестнадцатеричное: 75BCD15
С разделителями тысяч: 123,456,789
С ведущими нулями шириной 12: 000123456789
Со знаком: +123456789
Выравнивание влево: 123456789     
Выравнивание по центру:   123456789   

Пример 2: Вывод таблицы умножения с выравниванием

Пример
for i in range(1, 11):
    for j in range(1, 11):
        print(f'{i*j:4}', end='')
    print()
   1   2   3   4   5   6   7   8   9  10
   2   4   6   8  10  12  14  16  18  20
   3   6   9  12  15  18  21  24  27  30
   4   8  12  16  20  24  28  32  36  40
   5  10  15  20  25  30  35  40  45  50
   6  12  18  24  30  36  42  48  54  60
   7  14  21  28  35  42  49  56  63  70
   8  16  24  32  40  48  56  64  72  80
   9  18  27  36  45  54  63  72  81  90
  10  20  30  40  50  60  70  80  90 100

Пример 3: Использование repr() для отладки

Пример
x = 100
print(repr(x))
100

Пример 4: Запись целого числа в текстовый файл

Пример
with open('output.txt', 'w') as f:
    print(42, file=f)
with open('output.txt', 'r') as f:
    print(f.read())
42

Пример 5: Прямой вывод через sys.stdout.write

Пример
import sys
sys.stdout.write(str(123) + '\n')
123

Пример 6: Вывод очень большого целого числа

Пример
big = 10**100
print(big)
10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000

Пример 7: Использование format с именованными аргументами

Пример
print('Число {num} в квадрате равно {sq}'.format(num=5, sq=25))
Число 5 в квадрате равно 25

Пример 8: Форматирование через оператор %

Пример
a, b = 10, 20
print('a = %d, b = %d' % (a, b))
a = 10, b = 20

Пример 9: Перенаправление вывода в строковый буфер

Пример
from io import StringIO
buf = StringIO()
print(123, file=buf)
print(buf.getvalue())
123

Пример 10: Вывод целой части числа с плавающей точкой

Пример
f = 3.99
print(int(f))
3

Вывод целого числа в Python - comments

En
Python print integer (python)