Форматування рядків дозволяє створювати динамічні рядки шляхом поєднання змінних і значень. У цій статті ми обговоримо близько 5 способів форматування рядка.
Ви дізнаєтесь про різні методи форматування рядка з прикладами для кращого розуміння. Давайте подивимося на них зараз!
Як форматувати рядки в Python
Існує п’ять різних способів виконання форматування рядка Python
- Форматування за допомогою оператора %.
- Форматування за допомогою рядкового методу format().
- Форматування за допомогою рядкових літералів, які називаються f-рядками.
- Форматування за допомогою класу шаблону рядка
- Форматування за допомогою рядкового методу center().
Отже, ми побачимо всі вищезгадані способи, а також зосередимося на тому, яка стратегія форматування рядка є найкращою.
1. Як відформатувати рядок за допомогою оператора %
Це найстаріший спосіб форматування рядків. Тут ми використовуємо модуль % оператор . Модуль % також відомий як оператор форматування рядка.
Рядок формату Python за допомогою оператора %
У виразі The mangy, scrawn broy dog %s gobbled down % ‘hurriedly’, заповнювач %s у рядку замінено на значення ‘hurriedly’.
Python3
math pow java
print>(>'The mangy, scrawny stray dog %s gobbled down'> %>'hurriedly'> +> >'the grain-free, organic dog food.'>)> |
>
>Вихід
The mangy, scrawny stray dog hurriedly gobbled downthe grain-free, organic dog food.>
Введення кількох рядків за допомогою оператора modulo
Тут ми вставляємо кілька рядків за допомогою оператора %.
Python3
x>=> 'looked'> print>(>'Misha %s and %s around'>%>(>'walked'>,x))> |
>
>Вихід
Misha walked and looked around>
Точна обробка в Python за допомогою оператора %
Числа з плаваючою комою використовують формат %a.bf . тут, a це буде мінімальна кількість цифр у рядку; вони можуть бути доповнені пробілом, якщо ціле число не має стільки цифр.
Близько до цього, bf визначає, скільки цифр має відображатися після коми.
У цьому коді рядок «Значення pi: %5.4f» містить специфікатор формату %5.4f. Специфікатор формату %5.4f використовується для форматування числа з плаваючою комою з мінімальною шириною 5 і точністю 4 знаки після коми.
Python3
print>(>'The value of pi is: %5.4f'> %>(>3.141592>))> |
>
>Вихід
The value of pi is: 3.1416>
Кілька типів перетворення форматів
У наведеному коді рядок форматування Python перетворюється на ціле число та плаваючу кому за допомогою %d,%f.
Python3
variable>=> 12> string>=> 'Variable as integer>=> %>d
> Variable as>float> => %>f'>%>(variable, variable)> print> (string)> |
>
>Вихід
Variable as integer = 12 Variable as float = 12.000000>
Примітка: Щоб дізнатися більше про %-форматування, див Форматування рядка в Python за допомогою %
2. Як відформатувати рядок за допомогою методу format().
Метод Format(). був представлений разом із Python3 для більш ефективної обробки складного форматування рядків.
Засоби форматування працюють, поміщаючи в рядок одне або більше полів заміни та заповнювачів, визначених парою фігурних дужок { }, і викликаючи str.format() . Значення, яке ми хочемо помістити в заповнювачі та об’єднати з рядком, переданим як параметр у функцію format.
Синтаксис: «Рядок тут {}, а потім також {}».format(‘something1′,’something2’)
Форматування рядка Python за допомогою методу format().
Цей код використовує {} як покажчик місця заповнення, а потім ми викликали метод.format() на «рівному» покажчику місця заповнення.
Python3
print>(>'We all are {}.'>.>format>(>'equal'>))> |
>
>Вихід
We all are equal.>
Вставка на основі індексу
У цьому коді фігурні дужки {} з індексами використовуються в рядку ‘{2} {1} {0}’, щоб вказати позиції, де будуть розміщені відповідні значення.
Python3
print>(>'{2} {1} {0}'>.>format>(>'directions'>,> >'the'>,>'Read'>))> |
>
приклади бінарних дерев
>Вихід
Read the directions>
Вставте об’єкт, призначивши ключові слова
У цьому коді фігурні дужки {} з іменованими заповнювачами ({a}, {b}, {c}) використовуються в рядку 'a: {a}, b: {b}, c: {c}' для позначення позиції, де будуть розміщені відповідні іменовані аргументи.
Python3
print>(>'a: {a}, b: {b}, c: {c}'>.>format>(a>=> 1>,> >b>=> 'Two'>,> >c>=> 12.3>))> |
>
>Вихід
a: 1, b: Two, c: 12.3>
Повторне використання вставлених об’єктів
У цьому коді фігурні дужки {} з іменованими заповнювачами ({p}) використовуються в рядку «Перший {p} був у порядку, але {p} {p} був жорстким.» для позначення позицій, де відповідні іменовані буде розміщено аргумент p.
Python3
print>(> >'The first {p} was alright, but the {p} {p} was tough.'>.>format>(p>=>'second'>))> |
>
>Вихід
The first second was alright, but the second second was tough.>
Точність з плаваючою точністю за допомогою методу.format().
Синтаксис: {[index]:[width][.precision][type]}
Тип можна використовувати з кодами формату:
- «д» для цілих чисел
- «f» для чисел з плаваючою комою
- «б» для двійкових чисел
- 'О' для вісімкових чисел
- «х» для вісімкових шістнадцяткових чисел
- 's' для рядка
- 'Це є' для числа з плаваючою комою в експонентному форматі
приклад:
Обидва коди виконують форматування рядка. Перший рядок відформатовано за допомогою «%», а другий рядок за допомогою .format().
Python3
k алгоритм найближчого сусіда
print>(>'The valueof pi is: %1.5f'> %>3.141592>)> print>(>'The valueof pi is: {0:1.5f}'>.>format>(>3.141592>))> |
>
>Вихід
The valueof pi is: 3.14159 The valueof pi is: 3.14159>
Примітка: Щоб дізнатися більше про str.format(), див функція format() у Python
3. Розуміння f-рядка Python
PEP 498 представив новий механізм форматування рядків, відомий як літеральна інтерполяція рядків або частіше як F-струни (через початковий символ f перед рядковим літералом). Ідея f-String у Python полягає в тому, щоб спростити інтерполяцію рядків.
Щоб створити f-рядок у Python, додайте до рядка букву f. Сам рядок можна відформатувати приблизно так само, як і ви вул. формат() . F-рядки забезпечують стислий і зручний спосіб вбудовування виразів Python у рядкові літерали для форматування.
Форматування рядків за допомогою F-Strings
У цьому коді f-рядок fМене звати {name}. використовується для інтерполяції значення змінної name у рядок.
Python3
10 1 мільйон
name>=> 'Ele'> print>(f>'My name is {name}.'>)> |
>
>Вихід
My name is Ele.>
Цей новий синтаксис форматування дуже потужний і простий. Ви також можете вставляти довільні вирази Python і навіть виконувати в ньому арифметичні операції.
Арифметичні операції з використанням F-рядків
У цьому коді f-рядок f Він сказав, що його вік {2 * (a + b)}. використовується для інтерполяції результату виразу 2 * (a + b) у рядок.
Python3
a>=> 5> b>=> 10> print>(f>'He said his age is {2 * (a + b)}.'>)> |
>
>Вихід
He said his age is 30.>
Ми також можемо використовувати лямбда вирази в f-рядок форматування.
Лямбда-вирази з використанням F-рядків
У цьому коді анонімна лямбда-функція визначається за допомогою лямбда x: x*2. Ця лямбда-функція приймає аргумент x і повертає його подвійне значення.
Python3
print>(f>'He said his age is {(lambda x: x*2)(3)}'>)> |
>
>Вихід
He said his age is 6>
Точність Float у методі f-String
У цьому коді форматування f-рядка використовується для інтерполяції значення змінної num у рядок.
Syntax : {value:{width}.{precision}}> Python3
num>=> 3.14159> print>(f>'The valueof pi is: {num:{1}.{5}}'>)> |
>
>Вихід
The valueof pi is: 3.1416>
Примітка: Щоб дізнатися більше про f-рядки, див f-рядки в Python
4. Python String Template Class
У модулі String Template Class дозволяє створити спрощений синтаксис для специфікації виводу. Формат використовує імена заповнювачів, утворені $ з дійсним Python ідентифікатори (алфавітно-цифрові символи та підкреслення). Якщо заповнювач оточити фігурними дужками, то після нього буде більше буквено-цифрових літер без проміжних пробілів. Запис $$ створює один екранований $:
Форматування рядка Python за допомогою шаблонного класу
Цей код імпортує клас шаблону з модуля string. Клас Template дозволяє нам створити рядок шаблону з заповнювачами, які можна замінити фактичними значеннями. Тут ми замінюємо значення n1 і n2 замість n3 і n4 у рядку n.
Python3
from> string>import> Template> n1>=> 'Hello'> n2>=> 'techcodeview.com'> n>=> Template(>'$n3 ! This is $n4.'>)> # and pass the parameters into the> # template string.> print>(n.substitute(n3>=>n1, n4>=>n2))> |
>
>Вихід
Hello ! This is techcodeview.com.>
Примітка: Щоб дізнатися більше про клас String Template, див Клас шаблону рядка в Python
5. Як відформатувати рядок за допомогою методу center().
Метод center() — це вбудований метод у класі str Python, який повертає новий рядок, розміщений по центру в рядку заданої ширини.
Форматування рядка за допомогою методу center().
Цей код повертає новий рядок з пробілами зліва та справа.
Python3
string>=> 'GeeksForGeeks!'> width>=> 30> centered_string>=> string.center(width)> print>(centered_string)> |
>
>
приклади бінарних деревВихід
GeeksForGeeks!>
Рядок формату Python: % проти .format проти літералу f-рядка
f-струни швидше і краще, ніж обидва %-форматування і str.format() . Вирази f-рядків обчислюються під час виконання, і ми також можемо вбудовувати вирази всередину f-рядка, використовуючи дуже простий і легкий синтаксис.
Вирази в фігурних дужках обчислюються під час виконання, а потім з’єднуються з рядковою частиною f-рядка, а потім повертається останній рядок.
Примітка: Використовуйте рядок шаблону, якщо рядок є рядком, наданим користувачем. Інакше використовуйте f-Strings, якщо ви використовуєте Python 3.6+, і. format(), якщо це не так.
Ми розглянули всі 5 способів форматування рядків у Python. Є багато варіантів використання та прикладів для кожного методу. Ми також порівняли ці методи, щоб визначити, який з них найбільш ефективний для використання в реальних проектах.
Схожі читання:
- Форматування рядків у Python
- Як використовувати засоби форматування рядків у Python
- Як відформатувати рядок за допомогою словника в Python