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()方法
join()方法从可迭代对象中获取元素,并使用一个字符串将它们连接起来。然后通过使用给定的字符串分隔所有可迭代对象的元素来返回一个字符串。
语法
string.join(iterable)
这个函数接受一个可迭代对象(可以是列表、元组、字符串、字典或集合)。
用户自定义函数
我们将使用Python中的def关键字定义一个用户自定义函数,将数组元素转换为字符串,并用特定的字符连接每个元素。
示例
在这个示例中,我们将定义一个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
我们已成功将一个数组转换为字符串,并使用指定的字符(“a”)将元素连接起来。
使用Map()函数
map()函数接受一个可迭代对象,并在可迭代对象的每个项目上应用函数。然后返回一个由应用函数产生的迭代器。
示例
在这里,我们将使用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
在这个示例中,我们通过使用map()和join()函数将一个数组转换为一个字符串,并使用字符“a”连接元素。
使用Lambda
Lambda表达式用于创建匿名函数,可以理解为我们可以为函数定义一个无名对象。
示例
在这个示例中,我们将使用lambda创建一个匿名函数来将数组元素转换为字符串,然后使用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 保存了将数组元素的数据类型转换为字符串的lambda表达式。
示例
在此示例中,我们将使用另一个包含浮点数的数组。
# 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.11.21.31.41.5
这是将数组转换为字符串并使用指定字符连结元素的几种方法。