如何在 Python 中把一个列表转换为字符串?

100 阅读2分钟

我们可以用下面提到的方法将给定的列表转换为字符串

  • 使用手动方法
  • 使用join()方法
  • 使用map()方法
  • 使用列表理解法

让我们来详细讨论这些方法中的每一个。

使用手动方法。

我们有一个名为demo_list的列表,其中的元素如下。

例子。

demo_list = ['Python ', 'by ', 'i2tutorials']

我们取一个名为 emp_string 的空字符串 ,使用 for循环, 遍历每个元素,并将其添加到空字符串中。我们将完整的代码放入一个名为 list_to_string的 函数中 ,并将 demo_list 作为正式参数传递。

例子。

def list_to_string(demo_list):
   emp_string = ""
   for ele in demo_list:
      emp_string += ele
   return emp_string

demo_list = ['Python ', 'by ', 'i2tutorials']
print(list_to_string(demo_list))

输出。

使用 join() 函数。

join() 方法是一个字符串方法,它返回一个字符串,其中序列中的元素已经被 str 分隔符连接 。

语法。

string_name.join(iterable)

该方法接收一个可迭代的元素,如 ListTupleStringDictionarySet等。它返回一个与给定迭代器中的元素相连接的字符串。 如果iterable包含任何非字符串的值 ,该方法会引发一个 TypeError 异常。

例子。

def list_to_string(demo_list):
   emp_string = ""
   return (emp_string.join(demo_list))

demo_list = ['Python ', 'by ', 'i2tutorials']
print(list_to_string(demo_list))

输出。

当列表中的元素不是字符串类型的时候,上面的代码不起作用。我们需要首先将它们转换为字符串类型。

使用列表理解法。

这是上述方法的一个单行本的替代方法。我们 在遍历了iterable的每个元素后,先将元素转换成 字符串类型的 对象,然后用 join() 字符串方法 将其添加到空字符串中 。

例子。

demo_list = ['Python ', 'by', 'i2tutorials']

list_to_string= ' '.join([str(elem) for elem in demo_list])
print(list_to_string)

输出。

使用map()。

map() 函数在将给定的函数应用于像列表、元组等可迭代的每一个项目后,返回一个map对象(这是一个迭代器)的结果。

语法:

map(fun, iter)
  • fun 是一个函数, map() 将给定迭代器中的每个元素传递 给该函数 。
  • iter 是一个要被映射的迭代器。

这个函数在对给定的迭代器(如列表、元组等)的每个项目应用给定的函数后,返回一个带有元素的列表。

注意: 我们可以向 map() 函数传递一个或多个可迭代项 。

例子。

demo_list = ['Python ', 'by', 'i2tutorials']

list_to_string= ' '.join(map(str, demo_list))
print(list_to_string)

输出。