Функция формата Python | ()

| | | | | | | | | | | | | | | | | | | | | | | | | | |

str.format() — это один из методов форматирования строк в Python3, который допускает множественные замены и форматирование значений. Этот метод позволяет нам объединять элементы в строке с помощью позиционного форматирования.

Использование одного модуля форматирования:

Форматизаторы работают, помещая один или несколько заполнителей и заполнителей, определяемых парой фигурных скобок. { }, в строку и вызовом str.format(). Значение, которое мы хотим поместить в заполнители и соединить со строкой, переданной в качестве параметров функции форматирования.

Синтаксис: {} .format (значение)

Параметры:
(значение): может быть целым числом, числовой константой с плавающей запятой, строкой, символами или даже переменными. .

Тип возвращаемого значения: возвращает отформатированную строку со значением, переданным в качестве параметра, в позиции заполнителя.

Код # 1: Демонстрация простого формата ().


# Демонстрационная программа Python3
# метод str.format()


# использование параметра формата в простой строке

print ( "{}, Портал информатики для гиков."

. формат ( " Python.Engineering " ))


# с использованием опции формата для
# значение сохраняется в переменной

str = " Эта статья написана на {} "

print ( str < /код> <класс кода = "обычный">. формат ( "Python" ))


# форматирование строки с использованием числовой константы

печать ( " Здравствуйте, мне {} лет! " . формат ( 18 ))

Вывод:

GeeksforGeeks, Информатика портал для гиков. Эта статья написана на Python Здравствуйте, мне 18 лет! 

Использование нескольких средств форматирования:

При форматировании строки можно использовать несколько пар фигурных скобок. Например, если ваше предложение требует другой замены переменных, вы можете сделать это, добавив вторую пару фигурных скобок и передав методу второе значение. Python заменит заполнители значениями в порядке.

Синтаксис: {} {} .format (value1, value2)

Параметры:
(значение1, значение2): Могут быть целыми числами, числовыми константами с плавающей запятой, строками, символами и даже переменными. Единственное отличие состоит в том, что количество значений, передаваемых в качестве параметров в методе format(), должно быть равно количеству заполнителей, созданных в строке.

Ошибки и исключения:
IndexError: возникает, когда в строке есть лишний заполнитель, и мы не передали для него никакого значения в методе format(). Python обычно присваивает заполнителям индекс по умолчанию в таком порядке, как 0, 1, 2, 3 .... для доступа к значениям, переданным в качестве параметров. Поэтому, когда он встречает заполнитель, индекс которого не имеет значения, переданного внутри в качестве параметра, он выдает IndexError.

Код № 2:

< br>

# Программа Python показывает ошибку индекса


# Имеется четыре заполнителя, но
# передано только три значения


# параметры в функции форматирования.

my_string = "{}, {} {} научный портал для {}"


print (my_string. format ( " Python.Engineering " , "computer" , "geeks" ))

Вывод:


Traceback (последний последний вызов): файл "/ home / 949ca7b5b7e26575871639f03193d1b3.py", строка 2, в печати (my_string.format (" Python .Engineering", "компьютер", "компьютерщики")) IndexError: индекс кортежа вне допустимого диапазона 

Код #3: Форматеры с несколькими заполнителями.


# Программа Python, которая использует несколько мест
# держатели для демонстрации str. метод format ()


# Несколько заполнителей в функции format ()

my_string = "{}, это {} научный портал для {}"

print (my_string. формат ( "GeeksforGeeks" , "компьютер" , "выродки" ))


# разные типы данных может использоваться для форматирования

print ( "Привет! Меня зовут {}, мне {} лет"

. format ( "User" , 19 ))


# Значения, переданные в качестве параметра
# заменяются в порядке их ввода

print ( "Это {} {} {} {}"

. формат ( "один" , "два" , "три" , " четыре" ))

Вывод:

GeeksforGeeks — портал компьютерных наук для гиков Привет! Меня зовут Пользователь, мне 19 лет. Это один, два, три, четыре 

Форматтеры с аргументами позиционирования и ключевыми словами:

Когда заполнители {} пусты, Python заменит значения, переданные через str.format(), по порядку.

Значения, существующие в методе str.format(), по существу типы данных tuple , и каждое отдельное значение, содержащееся в кортеже, можно вызвать по его порядковому номеру, который начинается с порядкового номера 0. Эти порядковые номера можно передать в фигурных скобках, которые служат заполнителями в исходной строке.

Синтаксис: {0} {1} .format (positional_argument, keyword_argument)

Параметры: (positional_argument , ключевое_аргумент)

Позиционный_аргумент может быть целым числом, числовыми константами с плавающей запятой, строками, символами и даже переменными.
Ключевой_аргумент по сути представляет собой переменную, хранящую некоторое значение, которое передается как pa rameter.

Код № 4:


# Чтобы продемонстрировать использование средств форматирования
# с аргументами позиционного ключевого слова.


# Позиционные аргументы
# по порядку

print ( "{0} love {1} !!" . format ( " Python.Engineering " ,

"Geeks" ))


# Поменять местами номер и индекс с
# заполнитель параметры

print ( "{1} обожаю {0} !!!" . формат ( "GeeksforGeeks" ,

"Гики" ))



print ( "Каждый {} должен знать, как использовать {} {} программирование и {}"

< класс кода = "обычный">. формат ( "программист" , "Открыть" , "Source" , "Операционные системы" ))

< br>


# Используйте порядковые номера
# значения ‚Äã‚Äãдля изменения порядка
# они появляются в строке

print ( "Каждый {3} должен уметь пользоваться {2} {1} программированием и {0}"

. формат ( "программист" , "Открыть" , "Source" , "Операционные системы" ))



# Аргументы ключевых слов названы
# по имени ключевого слова

print ( "{gfg} — {0}научный портал для {1}"

. format ( "computer" , " geeks " , gfg = "GeeksforGeeks" ))

Вывод:


Python.Engineering любит гиков!! Компьютерщики любят Python.Engineering !! Каждый программист должен знать, как использовать программирование с открытым исходным кодом и операционные системы. Каждая операционная система должна знать, как использовать исходное программное обеспечение с открытым исходным кодом и программист Python.Engineering — это информационный портал для гиков 

Спецификация типа:

Дополнительные параметры могут быть включены в фигурные скобки в нашем синтаксисе. Используйте синтаксис кода формата {имя_поля: преобразование} , где имя_поля указывает порядковый номер аргумента метода str.format(), а преобразование относится к коду преобразования типа данных.

s – строки
d – десятичные целые числа (с основанием 10)
f – отображение с плавающей запятой
c – символьные
b – двоичные
o – восьмеричные
x – шестнадцатеричный код со строчными буквами после 9
X – шестнадцатеричный формат с прописными буквами после 9
e – запись степени

Синтаксис:
String {field_name: convert} Example.format (value)

Ошибки и исключения:
ValueError: Ошибка при преобразовании типа в этом методе.

Код № 5:


# Показать ValueError while
# принудительно преобразовать тип pr


# При явном преобразовании числа с плавающей запятой r
Количество значений ‚Äã‚Äãв десятичной системе счисления с основанием 10 с "d"
# преобразование типов мы столкнуться со значением-ошибкой.

print ( "Сегодня температура {0: d} градусов снаружи! "

. формат ( 35,567 )) < / p>


# Напишите это, чтобы избежать ошибочных значений ‚Äã‚Äã
& # 39; & # 39; & # 39; print("Сегодня температура на улице {0: .0f} градусов!"

.format (35,567)) & # 39; & # 39; "

Вывод:

Traceback (последний последний вызов): файл "/ home/9daca03d1c7a94e7fb5fb326dcb6d242.py", строка 5, в печати ("Сегодня температура на улице {0: d} градусов!". формат (35,567)) ValueError: Неизвестный код формата ’d’ для объекта типа ’float’ 

Код # 6:

# Преобразование base-10 десятичные целые числа
# в числовые константы с плавающей запятой

print ( "Этот сайт {0: f}% защищен {1} !! " .

format ( 100 , "encrypted" ))


# Для ограничения точности

print ( "Мое среднее значение этого {0} было {1: .2f}%"

. format ( "semester" , 78.234876 ))


# Без десятичных знаков

print ( "Мое среднее значение этого {0} было {1: .0f}%"

. формат ( "semester" , 78.234876 ))


# Преобразование целого числа в двоичное или
# с различными другими преобразованными базами.

print ( " {0} из 100 равно {1: b} "

. формат ( "binary" , 100 ))

print ( "{0} из 100 равно {1: o } "

. формат ( "octal" , 100 ))

Выход:

Этот сайт надежно зашифрован на 100.000000% !! Мой средний результат за этот семестр составил 78,23 % Мой средний результат за этот семестр составил 78 % Двоичное число 100 равно 1100100 Восьмеричное число 100 равно 144 

Подстановки или генерирующие пробелы:

Код № 7:

По умолчанию строки выравниваются по левому краю поля, а числа — справа. Мы можем изменить это, поместив код выравнивания сразу после двоеточия.

": выравнивание текста по левому краю в поле ^ : центрирование текста в поле & gt; : выровняйте текст в поле по правому краю 

# Чтобы продемонстрировать расстояние, когда
# строки передаются как параметры

print ( "{0: 4} – это информационный портал для {1 : 8}!"

. format ( "Python.Engineering " , "выродки" ))


# Чтобы показать интервал, когда в качестве параметров передаются числовые
# константы.

print ( " Это {0 : 5} градусов снаружи! "

. формат ( 40 ) )


# Для демонстрации строковых и числовых значений
# константы, переданные в качестве параметров

print ( "{0: 4} был основан в {1:16}!"

. format ( "GeeksforGeeks" , 2009 ))



# Чтобы предложить настроить выравнивание пространства

print ( "{ 0: ^ 16} был основан в {1: < 4}! "

. формат ( "GeeksforGeeks" , 2009 ))

print ( "{: * ^ 20s}" формат ( "Гики" ))

Вывод:

GeeksforGeeks, это информатика портал для гиков!На улице 40 градусов!Питон.Инжиниринг основан в 2009 году!Питон.Инжиниринг основан в 2009 году!******Гики ******** 

Приложения:

форматеры обычно используются для организации данных. в лучшем свете, когда они используются для визуальной организации больших объемов данных. Если мы показываем базы данных пользователям, использование средств форматирования для увеличения размера поля и изменения выравнивания может сделать вывод более читабельным.

Код № 8: для демонстрации организации больших данных


< tr>

# выводит i, i ^ 2, i ^ 3,
# i ^ 4 в заданном диапазоне


# Функция выводит значения ‚Äã‚Äã
# неорганизованный

def неорганизованный (a, b):

for i in range (a, b):

print (i, i * * 2 , i * * 3 , i * * 4 )


# Функция выводит упорядоченный набор значений ‚Äã‚Äã

def Organized ( a, b):

for i в range (a, b):


# Использование средств форматирования для предоставления 6

# пробелов для каждого набора значений ‚Äã‚Äã

print ( " {: 6d} {: 6d} {: 6d} {: 6d} "

. format (i, i * * 2 , i * * 3 , i * * 4 ))

< br> Код драйвера

n1 = int ( input ( " Введите нижний диапазон: - " ))

n2 = int ( input ( "Введите верхний диапазон: -" ))

print ( "--- --- Прежде чем использовать средства форматирования ------- " )


# Вызов функции без средств форматирования
unorganized (n1, n2)

print ()

print ( "------- После использования средств форматирования ---------" )

print ()


# Вызов функции, содержащей g
# средства форматирования для организации данных
Organized (n1, n2)

Вывод:

Введите нижний диапазон: - 3 Введите верхний диапазон: - 10 ------ Перед использованием Форматтеры ------- 3 9 27 81 4 16 64 256 5 25 125 625 6 36 216 1296 7 49 343 2401 8 64 512 4096 9 81 729 6561 ------- После использования форматтеров ---- ----- 3 9 27 81 4 16 64 256 5 25 125 625 6 36 216 1296 7 49 343 2401 8 64 512 4096 9 81 729 6561