Список участников Python
Список соединений Python означает объединение списка строк с указанным разделителем для формирования строки. Иногда это полезно, когда вам нужно преобразовать список в строку. Например, преобразуйте список алфавитов в строку с разделителями-запятыми для сохранения в файле.
Список участников Python
Мы можем использовать функцию python string join() для объединения списка строк. Эта функция принимает iterable
в качестве аргумента, а List является интерактивным, поэтому мы можем использовать его с List. Кроме того, список должен содержать строки, если вы попытаетесь присоединиться к списку целых чисел, вы получите сообщение об ошибке в виде TypeError: элемент последовательности 0: ожидаемый экземпляр str, найдено целое число
. Давайте рассмотрим короткий пример объединения списка в Python для создания строки.
vowels = ["a", "e", "i", "o", "u"]
vowelsCSV = ",".join(vowels)
print("Vowels are = ", vowelsCSV)
Когда мы запустим вышеуказанную программу, она выдаст следующий вывод.
Vowels are = a,e,i,o,u
Python соединяет две строки
Мы также можем использовать функцию join() для соединения двух строк.
message = "Hello ".join("World")
print(message) #prints 'Hello World'
Почему функция join() находится в строке, а не в списке?
Один вопрос возникает у многих разработчиков Python: почему функция join() является частью String, а не списком. Разве приведенный ниже синтаксис не будет легче запомнить и использовать?
vowelsCSV = vowels.join(",")
По этому поводу есть популярный вопрос StackOverflow, здесь я перечисляю наиболее важные моменты из обсуждений, которые имеют для меня смысл.
Основная причина заключается в том, что итерация и результат всегда являются строкой, поэтому имеет смысл иметь эту функцию в String API, а не во всех итерируемых классах.
Объединение списка нескольких типов данных
Давайте рассмотрим программу, в которой мы попытаемся соединить элементы списка, имеющие несколько типов данных.
names = ['Java', 'Python', 1]
delimiter = ','
single_str = delimiter.join(names)
print('String: {0}'.format(single_str))
Разделить строку с помощью функции соединения
Мы также можем использовать функцию join()
для разделения строки с указанным разделителем.
names = 'Python'
delimiter = ','
single_str = delimiter.join(names)
print('String: {0}'.format(single_str))
Использование функции split()
Помимо разделения с помощью функции join()
, функция split()
также может использоваться для разделения строки, которая работает почти так же, как join( )
функция. Давайте посмотрим на фрагмент кода:
names = ['Java', 'Python', 'Go']
delimiter = ','
single_str = delimiter.join(names)
print('String: {0}'.format(single_str))
split = single_str.split(delimiter)
print('List: {0}'.format(split))
Разделение только n раз
Функция split()
, которую мы продемонстрировали в последнем примере, также принимает необязательный второй аргумент, который указывает, сколько раз должна выполняться операция splot. Вот пример программы для демонстрации ее использования:
names = ['Java', 'Python', 'Go']
delimiter = ','
single_str = delimiter.join(names)
print('String: {0}'.format(single_str))
split = single_str.split(delimiter, 1)
print('List: {0}'.format(split))