Python String format () Объясните ПРИМЕРЫ

Содержание:

Anonim

Что такое формат строки Python ()?

Python String format () - это функция, используемая для замены, замены или преобразования строки с заполнителями с допустимыми значениями в последней строке. Это встроенная функция класса строки Python, которая возвращает отформатированную строку в качестве вывода. Заполнители внутри строки указаны в фигурных скобках.

Например, "Добро пожаловать в Guru99 {}". Формат ('значение здесь').

В этом руководстве вы узнаете:

  • Что такое формат строки Python ()?
  • Синтаксис функции format () в Python
  • Как работает строковый формат ()?
  • Пример: пустой заполнитель заменен строковым значением
  • Пример: пустой заполнитель заменен числовым значением
  • Пример: использование аргументов переменной или ключевого слова внутри заполнителя
  • Пример: использование аргументов индекса или позиции внутри заполнителя
  • Форматирование внутри заполнителей
  • Использование класса с форматом ()
  • Использование словаря с форматом ()
  • Подстановки переменных заполнения

Синтаксис функции format () в Python

templatestring.format(val1, val2… )

Параметры

val1, val2…: значения, которые необходимо заменить в заданной строке шаблона, имеющей заполнители в виде фигурных скобок {}. Заполнители могут быть строкой, парой ключ / значение, целыми числами, числами с плавающей запятой, символами и т. Д.

Возвращаемое значение:

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

Заполнители

Заполнители в строке шаблона представлены фигурными скобками, например {}. Заполнитель может быть пустым {}, или он может содержать переменную, например, для {name}, или он может иметь числовой индекс, например {0}, {1} и т. Д.

Как работает строковый формат ()?

Метод Python String format () будет сканировать исходные строки на предмет заполнителей. Заполнители могут быть пустыми фигурными скобками ({}), позиционными аргументами, т.е. строка может иметь заполнители с индексом 0, 1, например, {0}, {1} и т. Д.

Для аргументов ключевого слова имя переменной будет заключено в фигурные скобки, например, {имя}, {возраст}. В случае пустых фигурных скобок значения из формата будут последовательно заменены внутри фигурных скобок.

Первое значение будет заменено первой пустой фигурной скобкой, за которой следует следующая. Для позиционных аргументов индекс будет начинаться с 0 и так далее. Значения будут доступны в формате, разделенном запятыми, а 0- е значение будет указывать на первое значение внутри формата и так далее.

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

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

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

В приведенном ниже примере строка имеет пустые фигурные скобки ({}). Значение, присвоенное формату, будет заменено в фигурных скобках ({}).

Значение, которое мы хотим заменить, - это строка.

Пример:

Используя форматирование строк в Python, мы хотим, чтобы фигурные скобки ({}) были заменены строковым значением. Значение передается формату ("Guru99"). При выполнении фигурные скобки {} заменяются на Guru99, и вы получите последнюю строку в виде руководств Welcome to Guru99.

print ("Welcome to {} tutorials".format("Guru99"))

Выход:

Welcome to Guru99 tutorials

Пример: пустой заполнитель заменен числовым значением

В приведенном ниже примере мы хотим, чтобы числовое значение было заменено внутри исходной строки. Фигурные скобки ({}) добавляются в то место, где вам нужно числовое значение. При его выполнении пустые фигурные скобки ({}) заменяются числовым значением.

Пример:

Вы также можете использовать format () для вставки чисел внутри вашей строки. В примере будет показано, как заменить пустой заполнитель {} числом 99, присутствующим внутри format ().

print ("Welcome to Guru{} Tutorials".format("99"))

Выход:

Welcome to Guru99 Tutorials

Пример: использование аргументов переменной или ключевого слова внутри заполнителя

Также можно использовать переменные внутри фигурных скобок, как показано в примере ниже. Переменные определены внутри format (). Следовательно, при выполнении значение, присвоенное переменной, заменяется внутри исходной строки.

Пример:

Вы можете использовать переменные в фигурных скобках, например {name} {num}. Значения для переменной name и num доступны внутри формата, то есть формата (name = "Guru", num = "99"). Значения, присвоенные name и num, будут заменены внутри {name} и {num}.

print ("Welcome to {name}{num} Tutorials".format(name="Guru", num="99"))

Выход:

Welcome to Guru99 Tutorials

Пример: использование аргументов индекса или позиции внутри заполнителя

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

Пример:

print ("Welcome to {0}{1} Tutorials".format("Guru","99"))

Выход:

Welcome to Guru99 Tutorials

Пример: использование нескольких заполнителей внутри строки

В этом примере мы собираемся использовать несколько пустых заполнителей.

Пример:

Строка, используемая в примере, имеет несколько пустых заполнителей, и каждый заполнитель будет ссылаться на значение внутри format (). Первое значение будет заменено первым заполнителем и так далее.

print ("{} is {} new kind of {} experience!".format("Guru99", "totally","learning"))

Выход:

Guru99 is totally new kind of learning experience!

Форматирование внутри заполнителей

Вы видели, что заполнитель может быть пустым, с переменной или индексом. Также возможно, что вы можете применить форматирование строки Python внутри заполнителя.

Вот список форматов

Формат Описание Пример
: d Он даст результат в десятичном формате при использовании внутри заполнителя print("The binary to decimal value is : {:d}".format(0b0011)) Выход:
The binary to decimal value is : 3
: b Он даст результат в двоичном формате при использовании внутри заполнителя print("The binary value is : {:b}".format(500)) Выход:
The binary value is : 111110100
: e Он даст результат в научном формате при использовании внутри заполнителя, экспонента e в выводе будет в нижнем регистре. print("The scientific value is : {:e}".format(40)) Выход:
The scientific format value is : 4.000000e+01
: E Он даст вывод в научном формате при использовании внутри заполнителя, показатель E в выводе будет в верхнем регистре. print("The scientific value is : {:E}".format(40)) Выход:
The scientific value is : 4.000000E+01
: f Это выведет числовой формат с фиксированной точкой. По умолчанию вы получите любое число с шестью десятичными знаками. Если вам нужно до 2 знаков после запятой, используйте его как. 2f т.е.… точка (.) Перед 2f print("The value is : {:f}".format(40)) Выход:
The value is : 40.000000
Пример: отображение вывода до 2 знаков после запятой. print("The value is : {:.2f}".format(40)) Выход:
The value is: 40.00
: o Это выведет восьмеричный формат print("The value is : {:o}".format(500)) Выход:
The value is : 764
:Икс Это выведет шестнадцатеричный формат в нижнем регистре. print("The value is : {:x}".format(500)) Выход:
The value is : 1f4
:ИКС Это выведет шестнадцатеричный формат в верхнем регистре. print("The value is : {:X}".format(500)) Выход:
The value is : 1F4
: n Это выведет числовой формат. print("The value is : {:n}".format(500.00)) Выход:
The value is : 500
:% Это даст результат в процентном формате. По умолчанию он дает 6 знаков после запятой для процентного вывода, в случае, если вам не нужно какое-либо десятичное значение, вы можете использовать точку с 0, т.е. (: 0,0%). print("The value is : {:%}".format(0.80)) Выход:
The value is : 80.000000%
В этом примере показано, как пропустить десятичные знаки с помощью {: .0%} внутри заполнителя. print("The value is : {:.0%}".format(0.80)) Выход:
The value is: 80%
: _ Это выведет символ подчеркивания в качестве разделителя тысяч. Он доступен из Python 3.6+. print("The value is {:_}".format(1000000)) Выход:
The value is : 1_000_000
:, Это выведет запятую как разделитель тысяч print("The value is : {:,}".format(1000000)) Выход:
The value is : 1,000,000
Запятая (,) добавляется как разделитель тысяч, как показано в выходных данных.
: Это добавит пробел перед любыми положительными числами. В этом примере показано, как добавить пробел или отступ перед заданным числом. Число 5 указывает количество пробелов, которое вы хотите поставить перед числом. print("The value is: {:5}".format(40)) Выход:
The value is: 40
: - Это добавит знак минус перед отрицательными числами. В примере показано, как получить на выходе знак минус (-) перед числом с помощью {: -}. print("The value is: {:-}".format(-40)) Выход:
The value is: -40
: + Вы можете использовать знак плюса, чтобы указать, что число положительное. В примере показано, как получить на выходе знак плюса (+) перед числом с помощью {: +}. print("The value is: {:+}".format(40)) Выход:
The value is: +40
знак равно Равно используется для размещения знака +/- с левой стороны. В примере показано, как получить вывод со знаком плюс (+/-) перед знаком равенства с помощью {: =}. print("The value is {:=}".format(-40)) Выход:
The value is -40
: Это позволит выровнять окончательный результат по центру. В примере показано, как использовать {: ^} для выравнивания текста по центру. Число 10 используется для добавления 10 пробелов, чтобы показать выравнивание по центру при замене значения. print("The value {:^10} is positive value".format(40)) Выход:
The value 40 is a positive value
Здесь вы можете использовать 10, что добавит 10 пробелов в окончательный текст, а заменяемое значение будет выровнено по центру между 10 пробелами. Пробелы по 10 добавляются только для того, чтобы показать выравнивание по центру заменяемого значения.
:> Это позволит выровнять окончательный результат по правому краю. Пробел 10 добавляется с использованием (:> 10), а заменяемое значение выравнивается по правому краю. print("The value {:>10} is positive value".format(40)) Выход:
The value 40 is positive value
: < Это выровняет окончательный результат по левому краю. Пробел 10 добавляется с использованием (: <10), а заменяемое значение выравнивается по левому краю. print("The value {:<10} is positive value".format(40)) Выход:
The value 40 is positive value

Использование класса с форматом ()

В этом примере мы создаем класс и используем объект класса внутри метода Python .format. Заполнители будут ссылаться на свойства или члены класса, использующие объект класса.

Пример:

Класс вызывается внутри формата (c = MyClass ()). Объект c будет иметь ссылку на свойства и методы внутри класса MyClass ().

class MyClass:msg1="Guru"msg2="Tutorials"print("Welcome to {c.msg1}99 {c.msg2}!".format(c=MyClass()))

Выход:

Welcome to Guru99 Tutorials!

Использование словаря с форматом ()

Также можно использовать словарь внутри format (), как показано в примере ниже:

my_dict = {'msg1': "Welcome", 'msg2': 'Guru99'}print("{m[msg1]} to {m[msg2]} Tutorials!".format(m=my_dict))

Выход:

Welcome to Guru99 Tutorials!

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

Используя метод string.format (), вы можете добавить отступ, пробел, используя заполнители внутри вашей строки.

Пример:

В приведенном ниже примере добавим пространство внутри заполнителя, используя формат (). Чтобы добавить пробел, вы должны указать количество пробелов в фигурных скобках после двоеточия (:). Таким образом, заполнитель будет выглядеть как {: 5}.

print("I have {:5} dogs and {:5} cat".format(2,1))

Выход:

I have 2 dogs and 1 cat

Вы также можете указать индекс внутри заполнителя, например: {0: 5}, где 0 будет относиться к первому значению внутри формата.

print("I have {0:5} dogs and {1:5} cat".format(2,1))

Выход:

I have 2 dogs and 1 cat

Резюме

  • Класс строки Python дает нам важную встроенную команду, называемую format (), которая помогает нам заменять, заменять или преобразовывать строку с заполнителями с допустимыми значениями в конечной строке.
  • Заполнители внутри строкового модуля Python определены в фигурных скобках, например, «Добро пожаловать в Guru99 {}». Format ('значение здесь').
  • Заполнитель может быть пустым {}, или он может содержать переменную, например, для {name}, или он может иметь числовой индекс, например {0}, {1} и т. Д.
  • Вы можете использовать форматирование строк в Python внутри заполнителей, которые могут помочь добавить отступы, выровнять по центру, а также помочь с форматированием чисел.