Фото Нейт Грант на Unsplash

Возможность форматирования string является довольно простым требованием для любого, кто умеет программировать, но в прошлом было несколько способов сделать это в Python. Есть оригинальный метод %, есть метод .format и совсем недавно появился метод f-String. Итак, что вы выбираете?

Я довольно ленив, поэтому, как только я освоился с методами .format, я как бы зациклился на них, но есть недостатки, о которых я расскажу и которые указывают на проблему с ними.

Но сначала давайте сделаем краткий обзор:

%-formatting

Это классический метод, который хорошо помнят те, кто программировал в начале Python2 дней. По сути, вы добавляете к счету % букву «s» (чтобы показать, что вы хотите поставить string) и добавляете знак % после string следующим образом.

>>> name = "John"
>>> "Hello, %s" % name
'Hello, John'

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

Чтобы добавить более одной вещи, это тоже становится немного раздражающим, когда вы вводите кортеж следующим образом:

что хорошо, но как только строки становятся довольно длинными, их может быть трудно отслеживать. Представьте предварительно рассчитанный ответ клиента (что-то простое, но немного длинное), как показано ниже:

>>> "Hello, %s my age is %s." % (name, age)

И дальше может быть только хуже.

>>> "Hey %s! Thanks for ordering with us today. We saw that your payment for order number %s didn't go through to the address %s. Can you verify that your mobile number: %s is correct?" % (name, order_number, address, mobile_number)

и немного больше контроля, поскольку вы можете ссылаться на нужную переменную, ссылаясь на их индекс:

Однако str.format() все еще довольно неуклюжий

>>> "Hello, {}. I am {}.".format(name, age)
'Hello, John. I am 44.'

И вы также можете сделать что-то более интересное:

Представьте себе случай с 10 переменными и сверхдлинным string, результат все равно не будет отличаться от метода %.

>>> details = {'name': 'John', 'age': 44}
>>> "Hello, {name}. I am {age}.".format(name=details['name'], age=person['age'])
'Hello, John. You are 44.'

Сила f-струны

f-Strings (или форматированные строковые литералы) — это новейший способ манипулирования strings в Python. По сути, вы можете поместить переменную в string, если будете следовать набору правил.

«Тилу»

Так, например, приведенный выше базовый пример теперь изменяется на:

Разве это не намного приятнее?

>>> f"Hello, {name}. I am {age}."
'Hello, John. I am 44.'

Более того, мы можем расширить эту функциональность, чтобы поместить python выражений в f-strings:

или даже:

>>> f"{3 * 3}"
'9'

Так это круто! Теперь вы можете без особого труда включать выражения, и это только начало.

>>> patient = 'David'
>>> f"Can the patient: {to_lowercase(name)} please come to the desk."
'Can the patient: David please come to the desk.'

Работа со строками занимает центральное место в Python, потому что, честно говоря, строки очень важны. По какой-то причине его было так неуклюже использовать, но, к счастью, дизайнеры Python прислушались к людям и облегчили жизнь.

Здесь больше нечего сказать, поэтому, надеюсь, вам, ребята, было интересно, и оставайтесь на связи!

«Будьте в курсе моих последних статей здесь»!

НАПИСАНО

Следовать

Еще от Тилу

Следовать

"1 час назад"

Фото автора «Cristian Lopez» на «Unsplash»

10 изящных приемов Python и советы, которые должны знать новички

Читать дальше · 8 минут чтения

Python — мощный язык программирования общего назначения. Он используется в веб-разработке, науке о данных, создании прототипов программного обеспечения и так далее. К счастью для начинающих, Python имеет простой и удобный синтаксис. Это делает Python отличным языком для обучения программированию для начинающих.

Python — это динамический интерпретируемый язык. В исходном коде нет объявлений типов переменных, параметров, функций или методов. Это делает код коротким и гибким, и вы теряете проверку типов исходного кода во время компиляции. …

Python — это язык программирования общего назначения. Его очень легко освоить, простой синтаксис и удобочитаемость — вот некоторые из причин, по которым разработчики переходят на python с других языков программирования.

"1 час назад"

9 волшебных фактов о Python

Наука о данных

Мы можем использовать python как объектно-ориентированный и процедурно-ориентированный язык. Это открытый исходный код и множество библиотек для различных реализаций.

Python — это интерпретируемый язык высокого уровня, который лучше всего подходит для написания сценариев Python для автоматизации и повторного использования кода.

Он был создан в 1991 году Гвидо Ван Россумом. Происхождение его названия навеяно комедийным сериалом «Монти Пайтон». Работа с Python дает нам безграничные возможности. …

f-String в Pythons3 для специалистов по данным