Манипулирование строками в Python: объяснение метода join() и других полезных строковых методов

Причина, по которой в Python используется метод str.join(list)вместо list.join(str), заключается в том, что join()реализуется для строкового объекта, а не для объекта списка.

В Python метод join()используется для объединения последовательности строк, при этом строка, для которой вызывается метод, действует как разделитель между элементами последовательности. Метод join()принимает список (или любой итерируемый объект) в качестве аргумента и возвращает новую строку, которая представляет собой объединение всех элементов списка.

Например, предположим, что у нас есть список слов: ['Hello', 'world', 'Python']. Если мы хотим объединить эти слова в одну строку с пробелом в качестве разделителя, мы можем использовать метод join()следующим образом:

words = ['Hello', 'world', 'Python']
result = ' '.join(words)
print(result)

Выход:

Hello world Python

Если бы вместо этого метод join()был реализован для объекта списка, нам пришлось бы изменить порядок аргументов на обратный. Однако более интуитивно понятно использовать строку-разделитель в качестве вызывающего метода, поскольку она читается как предложение естественного языка: " ".join(words).

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

  1. split(): разбивает строку на список подстрок на основе указанного разделителя.
  2. strip(): удаляет начальные и конечные пробелы из строки.
  3. replace(): заменяет вхождения указанной подстроки другой подстрокой в ​​строке.
  4. lower(): преобразует строку в нижний регистр.
  5. upper(): преобразует строку в верхний регистр.
  6. startswith(): проверяет, начинается ли строка с указанной подстроки.
  7. endswith(): проверяет, заканчивается ли строка указанной подстрокой.
  8. find(): ищет первое вхождение подстроки в строке и возвращает ее индекс.
  9. count(): возвращает количество вхождений подстроки в строку.
  10. format(): форматирует строку, заменяя заполнители указанными значениями.