Python. Клас str. Функції вирівнювання рядків




Клас str. Функції вирівнювання рядків


Зміст


Пошук на інших ресурсах:

1. Функція str.center(). Отримати рядок заданої ширини

Функція str.center() дозволяє отримати рядок заданої ширини, який центрується. Загальна форма функції наступна

str.center(width [, fillchar])

де

  • width – ширина рядка, який центрується. Значення width може бути і більше і менше за кількість символів у рядку. Для деякого рядка s, якщо width<=len(s), то рядок виводиться без символів-заповнювачів fillchar. Якщо для рядка s виконується умова width>len(s), то рядок доповнюється символами-заповнювачами fillchar зліва і справа таким чином, якби цей рядок розміщувався по центру;
  • fillchar – символ-заповнювач. За замовчуванням значення fillchar рівне ASCII символу пробіл.

Приклад.

# Функція str.center()
# Центрування рядка відносно заданої ширини

# 1.Виклик з одним параметром width

# випадок, коли width>len(s)
s1 = "Hello world!"
s2 = s1.center(30) # s2 = ' Hello world! '

# випадок, коли width<=len(s)
s2 = s1.center(5) # s2 = 'Hello world!'

# 2. Виклик з двома параметрами

# випадок, коли width>len(s)
s1 = 'abcdef'
s2 = s1.center(20, '+') # s2 = '+++++++abcdef+++++++'

# випадок, коли width<=len(s)
s2 = s1.center(4, '-') # s2 = 'abcdef'

 

2. Функція str.ljust(). Вирівнювання рядка вліво

Функція str.ljust() повертає рядок, вирівняний вліво відносно заданої ширини. Загальна форма використання функції наступна:

s2 = s1.ljust(width[, fillchar])

де

  • s1 – рядок, який служить оригіналом для створення нового рядка s2;
  • s2 – рядок-результат, який доповнюється справа символами fillchar у випадку, якщо виконується умова len(s1)<width. Якщо символ fillchar відсутній при виклику функції, то за замовчуванням використовується пробіл;
  • width – ширина вирівнювання. Якщо width>len(s1), то довжина рядка s2 стає рівна width;
  • fillchar – символ-заповнювач, який додається зліва до рядка s1 у випадку, якщо width>len(s1). За замовчуванням fillchar є символом пробіл.

Приклад.

# Функція str.ljust()

# Функція повертає рядок, вирівняний вліво відносно заданої ширини

# 1. Виклик функції з 1 параметром
s1 = '0123'
s2 = s1.ljust(10) # s2 = '0123 ' - доповнюється пробілами
s2 = s1.ljust(2) # s2 = '0123'
s2 = s1.ljust(6) # s2 = '0123 '

# 2. Виклик функції з 2 параметрами
s1 = 'abcdef'
s2 = s1.ljust(10, '+') # s2 = 'abcdef++++'
s2 = s1.ljust(3, '=') # s2 = 'abcdef'
#s2 = s1.ljust(3, '==') - помилка: символ заповнювач має бути один

 

3. Функція str.rjust(). Вирівнювання рядка вправо

Функція str.rjust() повертає рядок, вирівняний вправо відносно заданої ширини. Загальна форма використання функції наступна:

s2 = s1.rjust(width[, fillchar])

де

  • s1 – рядок, який використовується для створення нового рядка s2;
  • s2 – результуючий рядок, який доповнюється зліва символами fillchar у випадку, якщо виконується умова len(s1)<width. Якщо символ fillchar відсутній при виклику функції, тоді використовується пробіл за замовчуванням;
  • width – ширина вирівнювання. Якщо width>len(s1), то довжина рядка s2 стає рівна width;
  • fillchar – символ-заповнювач, який додається до рядка s1 у випадку, якщо width>len(s1). За замовчуванням fillchar є символом пробіл.

Приклад.

# Функція str.rjust()

# Функція повертає рядок, вирівняний вправо відносно заданої ширини

# 1. Виклик функції з 1 параметром
s1 = '0123'
s2 = s1.rjust(10) # s2 = ' 0123'
s2 = s1.rjust(2) # s2 = '0123'
s2 = s1.rjust(6) # s2 = ' 0123'

# 2. Виклик функції з 2 параметрами
s1 = 'abcdef'
s2 = s1.rjust(10, '+') # s2 = '++++abcdef'
s2 = s1.rjust(3, '=') # s2 = 'abcdef'
#s2 = s1.ljust(3, '==') - помилка: символ заповнювач має бути один


 

4. Функція str.zfill(). Заповнити рядок нулями заданої ширини

Функція str.zfill() заповнює рядок символом ‘0’ згідно з заданою шириною. Загальна форма оголошення функції наступна:

s2 = s1.zfill(width)

де

  • s1 – заданий рядок;
  • s2 – результуючий рядок;
  • width – число, що визначає ширину заповнення.

Приклад.

# Функція str.zfill()

# 1. Використання без символів '-' або '+'
s1 = '2455'
s2 = s1.zfill(8) # s2 = '00002455'

s1 = 'abcd'
s2 = s1.zfill(10) # s2 = '000000abcd'

# 2. Використання з символом '-'
s1 = '-abcd'
s2 = str.zfill(s1, 10) # s2 = '-00000abcd'

# 3. Використання з символом '+'
s2 = str.zfill('+abcd', 10) # s2 = '+00000abcd'

# 4. Випадок, коли width<=len(s)
s1 = '+-=abcdef'
width = 5 # ширина виведення
s2 = s1.zfill(width) # s2 = '+-=abcdef'

 


Зв’язані теми