f-строки (форматированные строки) для новичков в Python

Эта часть в первую очередь предназначена для тех, кто плохо знаком с Python. К ним относятся математики, экономисты и т. Д., Которые хотят использовать Python в среде Jupyter. Вот краткое руководство о том, как сделать Best of Jupyter.

Если вы знакомы с более ранними версиями Python, вот мои лучшие советы о том, как перейти от .format () к этой новой:

Магия ф-струны

f-строки - это то, как вы должны использовать операторы печати в Python. Он довольно напоминает LaTeX в своей встроенной нотации:

Обратите внимание, как переменную name теперь можно использовать в строке. Это простой и легкий в использовании синтаксис: просто включите переменную в окружающий {}, отметив строковый тип как f-строку с помощью ‘f’ в начале.

Примечание для опытного программиста: «f» можно комбинировать с «r» для получения необработанной f-строки, которая может использоваться внутри регулярных выражений или аналогичных функций. «F» нельзя комбинировать с «u», потому что все строки Python3.6 + теперь по умолчанию являются Unicode. Это означает, что вы можете писать строки на хинди, китайском, французском, корейском и как минимум на 10 других языках.

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

Но почему они вообще называются форматированными строками? Потому что вы можете использовать с некоторыми классными приемами форматирования.

Упрощенное выравнивание и интервалы

Вы когда-нибудь пробовали создать такую ​​таблицу для ведения журнала или визуализации? Расположение элементов превращается в кошмар, когда вокруг летают несколько \ t символов табуляции.

Это намного проще сделать с f-строками Python, используя оператор двоеточия «:», за которым следует оператор выравнивания и значение ширины поля.

Существует как минимум 3 оператора выравнивания: ‹для выравнивания по левому краю,› для выравнивания по правому краю и ^ для выравнивания по центру. Обратитесь к примеру кода:

У вас также есть поддержка десятичного усечения и аналогичных стандартных утилит форматирования:

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

Полная поддержка выражений Python

Вышеупомянутое возможно только потому, что выражение внутри {} фактически оценивается, или в терминах программирования: выполняется.

Это означает, что вы можете вызывать любую функцию из этих {}.

Однако на практике вам следует избегать этого очень часто, потому что это может сильно затруднить отладку. Вместо этого сохраните возвращаемое значение из функции в переменной, а затем добавьте переменную в оператор печати fstring.

Те, кто пришел из функционального программирования, могут пропустить свои лямбда-функции. Не волнуйтесь, Python поможет вам:

Лямбда-функции в f-строках

Конец демоверсии

Хотите увидеть живую демонстрацию, в которой мы используем f-строки для исправления орфографии в Python? Проверьте функцию calculate_distance в этом сквозном руководстве

Резюме

  • Строки f означают, что вы можете включать переменные и вызовы функций в свои операторы печати и т.п.
  • встроенная переменная: разработчику легче читать и отлаживать
  • По возможности используйте f-струны!