Python 中将字符列表转换为字符串

Python 中要将字符列表转换为字符串:

  1. 在字符串分隔符上调用 str.join() 方法。
  2. 将列表传递给 join() 方法。
  3. 结果将是一个字符串,其中包含由提供的分隔符分隔的字符。
my_list = ['a', 'b', 'c']

# 👇️ without a separator
my_str = ''.join(my_list)
print(my_str)  # 👉️ 'abc'

# 👇️ with a space separator
print(' '.join(my_list))  # 👉️ 'a b c'

# 👇️ with a hyphen separator
print('-'.join(my_list))  # 👉️ 'a-b-c'

str.join 方法将一个可迭代对象作为参数并返回一个字符串,该字符串是可迭代对象中字符串的串联。

请注意 ,如果可迭代对象中有任何非字符串值,该方法会引发 TypeError。

如果我们的列表包含数字或其他类型,请在调用 join() 之前将所有值转换为字符串。

my_list = ['a', 'b', 'c', 1, 2, 3]

my_str = ', '.join(map(str, my_list))
print(my_str)  # 👉️ 'a, b, c, 1, 2, 3'

map() 函数将一个函数和一个可迭代对象作为参数,并使用可迭代对象的每个项目调用该函数。

在将项目传递给 str.join() 方法之前,我们使用该函数将列表中的每个项目转换为字符串。

调用 join() 方法的字符串用作元素之间的分隔符。

my_list = ['a', 'b', 'c']

my_str = '-'.join(my_list)
print(my_str)  # 👉️ 'a-b-c'

如果我们需要加入带空格的字符列表,请对包含空格的字符串调用该方法。

my_list = ['a', 'b', 'c']

my_str = ' '.join(my_list)
print(my_str)  # 👉️ 'a b c'

同样,我们可以使用换行符 \n 将列表中的字符与换行符连接起来。

my_list = ['a', 'b', 'c']

my_str = '\n'.join(my_list)

# a
# b
# c
print(my_str)

如果我们不需要分隔符而只想将列表的元素连接到一个字符串中,请对空字符串调用 join() 方法。

my_list = ['a', 'b', 'c']

my_str = ''.join(my_list)

print(my_str) # 👉️ abc