Python 字符串 join() 方法
字符串 join()
方法通过连接一个可迭代对象(列表、字符串、元组)的所有元素,并使用给定的分隔符来返回一个字符串。
示例
text = ['Python', 'is', 'a', 'fun', 'programming', 'language']
# 用空格连接 text 的元素
print(' '.join(text))
# 输出: Python is a fun programming language
String join() 的语法
join()
方法的语法是:
string.join(iterable)
join() 参数
join()
方法接受一个可迭代对象(能够一次返回其成员的对象)作为其参数。
一些可迭代对象的例子有:
- 原生数据类型 - 列表、元组、字符串、字典 和 集合。
- 文件对象和你通过一个
[__iter__()]
(/python-programming/iterator) 或__getitem()__
方法定义的对象。
注意:join()
方法提供了一种灵活的方式来从可迭代对象创建字符串。它通过字符串分隔符(调用 join()
方法的字符串)将可迭代对象的每个元素连接起来,并返回连接后的字符串。
join() 的返回值
join()
方法返回通过给定字符串分隔符连接可迭代对象的元素创建的字符串。
如果可迭代对象包含任何非字符串值,它会引发 TypeError
异常。
示例 1:join() 方法的工作原理
# 列表中的 .join()
numList = ['1', '2', '3', '4']
separator = ', '
print(separator.join(numList))
# 元组中的 .join()
numTuple = ('1', '2', '3', '4')
print(separator.join(numTuple))
s1 = 'abc'
s2 = '123'
# s2 的每个元素由 s1 分隔
# '1'+ 'abc'+ '2'+ 'abc'+ '3'
print('s1.join(s2):', s1.join(s2))
# s1 的每个元素由 s2 分隔
# 'a'+ '123'+ 'b'+ '123'+ 'c'
print('s2.join(s1):', s2.join(s1))
输出
1, 2, 3, 4
1, 2, 3, 4
s1.join(s2): 1abc2abc3
s2.join(s1): a123b123c
示例 2:join() 方法与集合
# 集合中的 .join()
test = {'2', '1', '3'}
s = ', '
print(s.join(test))
test = {'Python', 'Java', 'Ruby'}
s = '->->'
print(s.join(test))
输出
2, 3, 1
Python->->Ruby->->Java
注意:集合是无序的项目集合,所以您可能得到不同的输出(顺序是随机的)。