Python использует форматирование строк в стиле C для создания новых форматированных строк. Оператор «%» используется для форматирования набора переменных, заключенных в «кортеж» (список фиксированного размера), вместе со строкой форматирования, которая содержит обычный текст вместе с «спецификаторами аргумента», специальными символами, такими как %s
и %d
.
Допустим, у вас есть переменная с именем «name»
с вашим именем пользователя, и вы хотели бы затем вывести (приветствие этому пользователю).
# Это напечатет "Привет, Антон!"
name = "Антон"
print("Привет, %s!" % name)
Чтобы использовать два или более спецификатора аргумента, используйте кортеж (круглые скобки):
# Это напечатает "Антон родился в 1980 году."
name = "Антон"
birth = 1980
print("%s родился в %d году." % (name, birth))
Любой объект, который не является строкой, также может быть отформатирован с использованием оператора % s. Строка, которая возвращается из метода «repr» этого объекта, форматируется как строка. Например:
# Это напичатает "A list: [1, 2, 3]"
mylist = [1,2,3]
print("A list: %s" % mylist)
Вот некоторые основные спецификаторы аргументов, которые вы должны знать:
%s - String (or any object with a string representation, like numbers)
%d - Integers
%f - Floating point numbers
%.<number of digits>f - Floating point numbers with a fixed amount of digits to the right of the dot.
%x/%X - Integers in hex representation (lowercase/uppercase)
Упражнение
Вам нужно будет написать строку формата, которая выводит данные, используя следующий синтаксис: Hello John Doe. Your current balance is $53.44.
#поправьте код ниже
data = ("John", "Doe", 53.44)
format_string = "Hello";
print(format_string % data)
Решение упражнения
data = ("John", "Doe", 53.44)
format_string = "Hello %s %s. Your current balance is $%s.";
print(format_string % data)