f"Результат: {2 + 2}"
вернет "Результат: 4".
f"Имя: {person['name'].upper() if person['name'] else 'Неизвестно'}"
.
Использовать f-строки с операциями в Python очень просто и удобно. Внутри f-строки можно непосредственно вставлять выражения, которые будут вычислены и подставлены в результирующую строку.
Базовый пример:
name = "Alice"
age = 30
print(f"Привет, меня зовут {name}, и мне {age + 5} лет.") # Вывод: Привет, меня зовут Alice, и мне 35 лет.
Разные типы операций:
x = 10
y = 3
print(f"Сумма: {x + y}, Разность: {x - y}, Произведение: {x * y}, Деление: {x / y}, Целочисленное деление: {x // y}, Остаток: {x % y}")
# Вывод: Сумма: 13, Разность: 7, Произведение: 30, Деление: 3.3333333333333335, Целочисленное деление: 3, Остаток: 1
greeting = "Hello"
name = "Bob"
print(f"{greeting}, {name.upper()}!") # Вывод: Hello, BOB!
is_active = True
print(f"Статус пользователя: {'Активен' if is_active else 'Не активен'}") # Вывод: Статус пользователя: Активен
def square(x):
return x * x
number = 5
print(f"Квадрат числа {number} равен {square(number)}") # Вывод: Квадрат числа 5 равен 25
price = 45.6789
quantity = 3
print(f"Общая стоимость: {price * quantity:.2f}") # Вывод: Общая стоимость: 137.04 (округление до двух знаков после запятой)
Важно: Внутри f-строк можно использовать практически любые валидные выражения Python. Главное - следить за читаемостью кода. Если выражение становится слишком сложным, лучше вынести его в отдельную переменную перед использованием в f-строке.
Пример сложного выражения (лучше избегать таких в "чистом" виде в f-строке):
data = {'a': 1, 'b': 2, 'c': 3}
print(f"Сумма значений: {sum(value for value in data.values() if value % 2 != 0)}") # Вывод: Сумма значений: 4 (Суммирует только нечетные значения)
Вместо этого, лучше сделать так:
data = {'a': 1, 'b': 2, 'c': 3}
odd_values_sum = sum(value for value in data.values() if value % 2 != 0)
print(f"Сумма значений: {odd_values_sum}") # Вывод: Сумма значений: 4
Использование f-строк с операциями делает код более лаконичным и читаемым, особенно когда нужно динамически форматировать строки с вычислениями.