В процессе изучения строк мы уже говорили о многих методах использования. В реальном использовании нам часто приходится форматировать строки и выводить нужные нам результаты посредством форматирования.
Форматирование строки заключается в том, чтобы сначала создать пробел, затем оставить в этом пространстве несколько позиций, а затем заполнить соответствующее содержимое в соответствии с потребностями. Оставленные здесь позиции эквивалентны заполнителям. Существует два способа форматирования строки. Один из них — использовать оператор %, а другой — метод format().
Оператор % очень удобен при форматировании строк. Его синтаксическая структура следующая:
'%[+][-][0][.m] символ формата'%iteration
1) итерация — это контент, который мы хотим заполнить, а формат после первого % — это формат, который мы хотим выбрать.
2)[+] — это выравнивание по правому краю, а «+» — это параметр, который мы можем заполнить. Число представляет ширину выравнивания.
3)[-] — это выравнивание по левому краю, а «-» — это параметр, который мы можем заполнить. Число представляет ширину выравнивания.
4) М в [.m] — это необязательная точность, указывающая, сколько знаков после запятой следует оставить после запятой.
5) Символ форматирования — это формат, который нам нужно выбрать. Его распространенные типы: строка %s, десятичное целое число %d, одиночный символ %c, число с плавающей запятой %f, шестнадцатеричное число %x и восьмеричное число %o, символ%. %.
Понимание оператора % может быть относительно абстрактным. Давайте изучим его на примерах. Обычно мы используем вывод числа с плавающей запятой, сохраняя два знака после запятой. Код выглядит следующим образом:
>>>my_str=66666.66666>>print('Формат с двумя десятичными знаками: %.2f'%my_str) Формат с двумя десятичными знаками: 66666.67
При сохранении десятичных дробей операция округления будет выполняться автоматически. При ее использовании обратите внимание на ее форму. Мы можем выбрать одно или несколько значений для форматирования строки. Выше мы использовали операцию форматирования, часть форматирования — «%. 2f', а затем используйте % в конце строки, чтобы соединить соответствующую строку, которая напрямую эквивалентна соответствующему содержимому.
Давайте снова представим использование выравнивания:
>>>foriinrange(5):...print('%-5d'%i,end='')#Выравнивание по левому краю...print('%5d'%i)#Выравнивание по правому краю...0011223344
5 — это ширина выравнивания кода. Мы используем выравнивание по левому и правому краю. Первый столбец выравнивается по левому краю, а ширина равна 5. Затем снова выводится i без переноса. Второй вывод выравнивается по правому краю, поэтому вывод выглядит так, как показано выше. .
Речь идет об операторе %. Вы можете быстрее освоить эти знания, попрактиковавшись в них ниже.
Метод format() предоставляет дополнительные методы для форматирования строк. Его основной синтаксис — замена «%» на «{}» и «:». Его синтаксический формат:
стр.формат()
Давайте рассмотрим это на примере:
namea='Сяо Мин' nameb='Сяо Хуа' print('{} — хороший друг {}'.format(namea,nameb))
Этот пример — самый простой способ его использования, но, поскольку этот метод был представлен позже, у него должны быть свои преимущества. Ниже мы представим его конкретный метод.
В заполнителе структура может быть:
{[индекс[:[заполнить]выровнять][ширина][#][.k][тип]]}
Давайте посмотрим на эту структуру через диаграмму:
Приведенный выше пример содержит только простой '{}'. Если мы изменим его, мы сможем использовать приведенные выше структуры. Давайте объясним одну за другой:
1) Индекс — это позиция индекса. Мы можем присвоить ему номер, чтобы указать позицию индекса объекта в списке. Значение индекса начинается с 0. Если значение индекса отсутствует, оно указывается в порядке слева направо. Как и в примере выше, если мы добавим значение индекса:
namea='Сяо Мин' nameb='Сяо Хуа' print('{1} — хороший друг {0}'.format(namea,nameb))
Затем их позиции поменялись местами.
2) ':' является обязательным условием для последующего использования. При использовании последующих операций необходимо добавлять ':'.
3) fill можно выбрать параметр в виде количества символов для заполнения пробелов.
4) Ширина позволяет выбрать параметр для указания длины.
5) align может выбрать параметр в качестве метода выравнивания. Параметры: «>» для выравнивания по правому краю, «<» для выравнивания по левому краю, «=» для выравнивания по правому краю, но символ располагается в крайнем левом углу, и «^». представляет центрирование. Они требуют использования с шириной.
Давайте посмотрим на пример:
>>>my_str='dotcpp'>>>print('{:@>10}'.format(my_str))@@@@dotcpp
В этом примере мы выбрали выравнивание по правому краю, затем установили ширину 10 и заменили пробельные символы символом @.
6) '#' — базовый префикс.
7).k в k — необязательный параметр, используемый для представления числа, остающегося после десятичной точки.
8) тип может выбирать параметры для указания типа. Обычно используемые из них включают S для представления строки, D для представления десятичного целого числа, % для представления процента и f или F для представления числа с плавающей запятой.
Ниже мы используем пример использования вышеуказанных методов.
my_str='dotcpp'#Сначала определите две строки my_string=123456.654321print('my_str:{1:!^20s}nmystring:{0:$^20.2f}'.format(my_string,my_str))
Результат:
my_str:!!!!!!dotcpp!!!!!!!mystring:$$$$$123456.65$$$$$$
Для my_str «1» — это позиция индекса, «!» заменяет пробельные символы, «^» представляет центральную позицию, 20 — это ширина, а «s» — тип строки.
Для my_string «0» — это позиция индекса, «$» заменяет пустой символ пакета, «^» представляет центральную позицию шириной 20 бит, «.2» представляет 2 десятичных знака после десятичной точки, а «f» представляет тип с плавающей запятой.
Вот и все, что касается струн. Струны используются очень часто, поэтому каждый должен практиковаться и осваивать их с помощью упражнений.