Skip to content

lpad(col, len, pad)

Описание

Функция lpad() дополняет строку слева указанным символом до заданной длины. Если исходная строка длиннее указанной длины, она будет обрезана справа.

Параметры

  • col: string или Column - строка для дополнения
  • len: integer - желаемая длина строки после дополнения
  • pad: string - символ для дополнения

Возвращаемое значение

String - дополненная строка

Пример использования

from pyspark.sql.functions import lpad

# Создаем DataFrame
df = spark.createDataFrame([
    ("Hello",),
    ("World",),
    ("123",),
    ("",),
    (None,)
], ["text"])

# Дополняем строки слева
df.select(
    "text",
    lpad("text", 8, " ").alias("padded_spaces"),  # Дополнение пробелами
    lpad("text", 8, "*").alias("padded_stars"),   # Дополнение звездочками
    lpad("text", 3, "*").alias("truncated")       # Обрезка длинной строки
).show(truncate=False)

# Результат:
# +-----+-------------+------------+---------+
# |text |padded_spaces|padded_stars|truncated|
# +-----+-------------+------------+---------+
# |Hello|   Hello     |***Hello    |Hel      |  # Дополнение до 8 символов
# |World|   World     |***World    |Wor      |  # Дополнение до 8 символов
# |123  |   123      |*****123    |123      |  # Дополнение до 8 символов
# |     |            |            |         |  # Пустая строка
# |null |null        |null        |null     |  # NULL значение
# +-----+-------------+------------+---------+

Примечания

  • Если исходная строка длиннее указанной длины, она будет обрезана справа
  • Для пустой строки возвращается строка, состоящая только из символов дополнения
  • Для NULL значений возвращается NULL
  • Функция полезна для форматирования вывода
  • Для дополнения справа используйте rpad()
  • Для центрирования текста используйте комбинацию lpad() и rpad()