Python:
Інтерполяція рядка
Як це зробити:
У Python 3.6 і вище ви можете інтерполювати рядки, використовуючи f-рядки. Ось як:
name = 'Аліса'
age = 30
greeting = f"Привіт, {name}. Тобі {age} років."
print(greeting)
Вивід:
Привіт, Аліса. Тобі 30 років.
Ви також можете використовувати вирази всередині фігурних дужок:
a = 5
b = 10
info = f"П'ять плюс десять дорівнює {a + b}, а не {2 * (a + b)}."
print(info)
Вивід:
П'ять плюс десять дорівнює 15, а не 30.
Поглиблено
До Python 3.6, .format()
був способом інтерполяції рядків:
name = 'Боб'
age = 25
greeting = "Привіт, {}. Тобі {} років.".format(name, age)
print(greeting)
Старий добрий Python (версії < 2.6) використовував оператор %
для інтерполяції, що є менш інтуїтивним і може стати заплутаним при використанні кількох змінних:
name = 'Керол'
age = 35
greeting = "Привіт, %s. Тобі %d років." % (name, age)
print(greeting)
Крім чистішого синтаксису, f-рядки швидші, оскільки вони обчислюються під час виконання та потім перетворюються безпосередньо на ефективну операцію форматування рядка. Метод .format()
і оператор %
вимагають більше кроків і працюють повільніше.
Дивіться також
- PEP 498 – Літеральна інтерполяція рядків для офіційної документації по f-рядках.
- Python f-рядки на Real Python для навчального посібника з використання f-рядків.
- Метод .format() у документації Python для розуміння старішого методу форматування рядків
.format()
.