Поиск по сайту:

Программа Python для преобразования массива в строку и объединения элементов с указанным символом


Массив — это структура данных, состоящая из набора элементов одного типа данных, каждый элемент которого идентифицируется индексом.

 [2, 4, 0, 5, 8] 

Массивы в Python

Python не имеет собственной структуры данных для представления массива. Вместо этого мы можем использовать структуру данных списка для представления массива. Здесь мы будем использовать список массива —

 [10, 4, 11, 76, 99]

В статье мы напишем программы на Python для преобразования массива в строку и объединения элементов с указанным символом.

Сценарии ввода-вывода

Предположим, у нас есть входной массив с целочисленными значениями. И на выходе будет строка, состоящая из всех элементов массива, объединенных с указанным символом.

Input array:
[1, 5, 3, 6]
Output:
1a5a3a6

Здесь элементы массива 1,5,3,6 соединяются символом a. Давайте рассмотрим другой массив с целочисленными значениями.

Input array:
[1, 2, 3, 10, 20]
Output:
1P2P3P10P20

Здесь элементы массива 1, 2, 3, 10, 20 соединяются символом P. Мы будем использовать встроенный метод string join() для объединения элементов массива с указанным символом.

Метод Присоединиться()

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

Синтаксис

string.join(iterable) 

Эта функция принимает итерируемый объект (который может быть List, Tuple, String, Dictionary или Set).

Пользовательская функция

Мы определим определяемую пользователем функцию, используя ключевое слово def в Python для преобразования элементов массива в строку. и соедините каждый элемент с указанным символом.

Пример

В этом примере мы определим функцию toString для преобразования элементов массива в строки. В функции мы объявим пустой список, в котором будут храниться преобразованные элементы строки. И с помощью метода string.join() мы соединим элементы массива с указанным символом.

def toString(L):
   r = []
   for i in L:
      r.append(str(i))
   return r

# creating array
arr = [1, 2, 3, 4, 5]
print ("The original array is: ", arr) 
print() 

specified_char = "a"
result = specified_char.join(toString(arr))
print ("The result is: ", result) 

Выход

The original array is:  [1, 2, 3, 4, 5]

The result is:  1a2a3a4a5

Мы успешно преобразовали массив в строку и соединили элементы указанным символом («а»).

Использование функции Карта()

Функция map() принимает итерируемый объект и применяет функцию к каждому элементу итерируемого объекта. И возвращает итератор, полученный в результате примененной функции.

Пример

Здесь мы будем использовать функцию карты для преобразования элементов массива в строковый тип данных.

# creating array
arr = [101,102,103,104,105]

print ("The original array is: ", arr) 
print() 

specified_char = "a"
result = specified_char.join(list(map(str, arr)))
print ("The result is: ", result) 

Выход

The original array is:  [101, 102, 103, 104, 105]

The result is:  101a102a103a104a105

В этом примере мы преобразовали массив в строку и соединили элементы символом «a» с помощью функций map() и join().

Использование лямбды

Лямбда-выражения используются для создания анонимных функций, и мы можем только определить безымянный объект для функции.

Пример

В этом примере мы создадим анонимную функцию, используя лямбда-выражение для преобразования элементов массива в строку. А затем соедините элементы, преобразованные в строку, с помощью метода join().

# creating array
arr = [101,102,103,104,105]
print ("The original array is: ", arr) 
print() 

specified_char = "a"
temp = lambda x : (str(i) for i in x)
result = specified_char.join(temp(arr))
print ("The result is: ", result) 

Выход

The original array is:  [101, 102, 103, 104, 105]

The result is:  101a102a103a104a105

Переменная temp содержит лямбда-выражение, которое преобразует типы данных элементов массива в строковый тип данных.

Пример

В этом примере мы возьмем еще один массив с числами с плавающей запятой.

# creating array
arr = [1.1,1.2,1.3,1.4,1.5]
print ("The original array is: ", arr) 
print() 
 
specified_char = "$"
temp = lambda x : (str(i) for i in x)
result = specified_char.join(temp(arr))
print ("The result is: ", result) 

Выход

The original array is:  [1.1, 1.2, 1.3, 1.4, 1.5]

The result is:  1.1$1.2$1.3$1.4$1.5

Это несколько подходов к преобразованию массива в строку и объединению элементов с указанным символом.

Статьи по данной тематике: