python course for me
March 7

f-строки (очень удобно)

Код внутри скобок

Когда вы указываете перед стройкой f python воспринимает её как необычную строку и каждое содержимое фигурных скобок он будет воспринимать как выражение на языке программирования. В фигурных скобках вы можете писать свои какие-либо выражения и никто не запрещает вам воспользоваться математическими операциями.

Вы можете пользоваться всеми возможностями ваших объектов. В нашем случае переменная name является строкой и мы знаем что у каждой строки есть метод lower. Давайте мы применим метод lower делает все буквы строки маленькими.

В скобках вы можете вообще не использовать переменные. То есть вы можете просто написать здесь какие-либо числа и это выражение также посчитается и будет выведен его результат.

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

Вывод переменных

С обозначением переменных

Начиная с версии Python 3.8 функционал f-строк был дополнен новой возможностью по выводу имён переменных и их значений. Посмотрите как теперь это можно сделать:

Вам достаточно указать название переменной и знак равно. Будет выведено автоматически и имя переменной и ее значение. При этом и знаки пробелов, если они указаны, будут учтены.

Формат вывода дробной части числа

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

Ответ простой - форматировать. F-строки поддерживают функционал форматирования. Мы указываем специальным образом после имени переменной сколько символов ожидаем увидеть.

Запись c:.3f говорит, что переменную c нужно представить в вещественном виде (это знак f) и отобразить три символа после запятой. Если у переменной c не хватает символов для трех знаков, проставятся нули. Если символов в избытке, произойдет округление до третьего символа после запятой.

Над целыми числами тоже можно так издеваться)

Формат вывода целых чисел

Пробелы перед числом (выравнивание)

При помощи f-строк мы можем влиять и на отображение целых чисел.

Запись n:7d говорит, что переменную n нужно представить в виде целого числа (это знак d ) и на отображение всего числа выделить 7 знаков. Если у переменной n не хватает разрядов до семи, то впереди отображения появятся знаки пробелов.

Выравнивание с помощью нулей (добавление в начало нулей)

Можно вместо пробелов добавить незначащие нули, для этого нужно подписать 0 перед количеством разрядов

Разделение разрядов числа (например, вместо 1000000 - 1_000_000)

Можно также влиять на знак разделителя между группами чисел, посмотрите пример ниже

Выравнивание

Существует несколько способов выравнивания переменных в f-строках. Различные варианты выравнивания следует:

< - Выравнивает выражение в фигурных скобках по левому краю. У строк такое поведение по умолчанию

> - Выравнивает выражение в фигурных скобках по правому краю. У чисел такое поведение по умолчанию

^ - Выравнивает выражение в фигурных скобках по центру

Ниже приведен пример использования выравнивания как для чисел, так и для строк.

Символы "|" используются в f-строке, чтобы помочь очертить интервал. Число после «:» указывает на количество символов в ширину.

По умолчанию символом заполнителем является пробел, но можно его заменить на другое значение

Практический пример выравнивания

Давайте с вами смоделируем чек покупки. Пример ниже