Функция format в Python используется для форматирования значений в соответствии со спецификацией формата. Она предоставляет гибкий способ форматирования строк, чисел, дат и других объектов.
Содержание
- Синтаксис
- Параметры
- Возвращаемое значение
- Спецификаторы формата
- Общие спецификаторы формата
- Спецификаторы для чисел
- Примеры использования
- Пример 1: Форматирование целого числа
- Пример 2: Форматирование вещественного числа
- Пример 3: Форматирование строки
- Пример 4: Форматирование чисел в различных системах счисления
- Пример 5: Форматирование с выравниванием и заполнением
- Пример 6: Форматирование числа с разделителями тысяч
- Пример 7: Вывод таблицы с форматированием
- Пример 8: Форматирование даты
Синтаксис
format(value, format_spec='')
Параметры
value: Обязательный параметр. Значение, которое нужно отформатировать.format_spec: Необязательный параметр. Строка, определяющая спецификацию формата. По умолчанию пустая строка.
Возвращаемое значение
Функция возвращает строку, содержащую отформатированное значение.
Спецификаторы формата
Форматирование строк в Python с помощью функции format или метода str.format предоставляет гибкий механизм для отображения данных в различных форматах. Ниже приведены все спецификаторы формата, которые можно использовать:
Общие спецификаторы формата
- Выравнивание:
<– по левому краю (по умолчанию для строк)>– по правому краю (по умолчанию для чисел)^– по центру
- Заполнение:
- Любой символ, используемый перед выравниванием, будет использован в качестве заполняющего символа.
- Например,
:0>5выведет число, выровненное по правому краю и заполненное нулями:00042.
- Знак:
+– отображает знак для положительных и отрицательных чисел-– отображает знак только для отрицательных чисел (по умолчанию)space– оставляет пробел перед положительными числами
- Ширина:
- Определяет минимальное количество символов для отображения значения.
- Например,
:10выведет значение, выровненное по правому краю и имеющее минимальную ширину 10 символов.
- Запятая:
,– использует запятые в качестве разделителя тысяч.- Например,
:,для числа 1000000 выведет1,000,000.
- Точка:
.– определяет количество знаков после запятой для чисел с плавающей точкой.- Например,
:.2fвыведет вещественное число с двумя знаками после запятой:3.14.
Спецификаторы для чисел
- Целые числа:
d– десятичное числоb– двоичное числоo– восьмеричное числоx– шестнадцатеричное число (строчные буквы)X– шестнадцатеричное число (прописные буквы)n– число в текущей локали
- Вещественные числа:
e– экспоненциальное представление (строчные буквы)E– экспоненциальное представление (прописные буквы)f– десятичное представление (по умолчанию для вещественных чисел)F– десятичное представление (используетinfиnanв прописных буквах)g– общий формат (используетeдля больших чисел иfдля маленьких)G– общий формат (используетEдля больших чисел иFдля маленьких)%– процентное представление (умножает число на 100 и добавляет знак процента)
Примеры использования
Пример 1: Форматирование целого числа
number = 42
formatted_number = format(number, "d")
print(formatted_number) # Вывод: 42
Пример 2: Форматирование вещественного числа
pi = 3.141592653589793
formatted_pi = format(pi, ".2f")
print(formatted_pi) # Вывод: 3.14
Пример 3: Форматирование строки
name = "Alice"
formatted_name = format(name, "^10")
print(f"|{formatted_name}|") # Вывод: | Alice |
Пример 4: Форматирование чисел в различных системах счисления
number = 255
print(format(number, "b")) # Вывод: 11111111
print(format(number, "x")) # Вывод: ff
print(format(number, "o")) # Вывод: 377
Пример 5: Форматирование с выравниванием и заполнением
number = 42
formatted_number = format(number, "0>5")
print(formatted_number) # Вывод: 00042
Пример 6: Форматирование числа с разделителями тысяч
number = 1000000
formatted_number = format(number, ",")
print(formatted_number) # Вывод: 1,000,000
Пример 7: Вывод таблицы с форматированием
data = [
{"name": "Alice", "age": 30},
{"name": "Bob", "age": 25},
{"name": "Charlie", "age": 35}
]
for item in data:
print("{:<10} {:>3}".format(item["name"], item["age"]))
# Вывод:
# Alice 30
# Bob 25
# Charlie 35
Пример 8: Форматирование даты
from datetime import datetime
now = datetime.now()
formatted_date = format(now, "%Y-%m-%d %H:%M:%S")
print(formatted_date) # Вывод: текущая дата и время в формате ГГГГ-ММ-ДД ЧЧ:ММ:СС 







