Python字符串join()方法

时间:2020-02-23 14:43:28  来源:igfitidea点击:

Python字符串join()方法从可迭代对象创建一个字符串。
它使用字符串作为分隔符将所有可迭代的元素连接在一起并返回它。

什么时候使用Python String join()方法?

一些可能的用例是:

  • 从列表,元组等迭代对象创建CSV字符串。

  • 出于日志目的,获取iterable的字符串表示形式并登录到文件中。

  • 通过将可迭代对象转换为字符串,将其保存到文件中。

join()方法的语法

join()方法的语法为:

str.join(iterable)

输出是一个新字符串,我们可以将其分配给另一个变量。
我们可以使用List,Tuple,String和Set作为输入数据类型,因为它们是可迭代的。

让我们看一些使用字符串join()方法的示例。

1.将字符串列表连接到CSV

delimiter = ","

csv_str = delimiter.join(['a', 'b', 'c'])

print(csv_str)  # a,b,c

2.字符串的串联

tuple_vowels = ('a', 'e', 'i', 'o', 'u')

vowels_str = "".join(tuple_vowels)

print(vowels_str)  # aeiou

我们可以使用带有空字符串的join()来连接可迭代对象中的所有字符串。

3.使用join()和单个字符串作为输入

str = 'Hello'

print(f'String characters are: {",".join(str)}')

输出:

String characters are: H,e,l,l,o

该字符串在Python中是可迭代的。
因此,当我们传递单个字符串作为join()方法输入时,其字符是可迭代的元素。

4.设置字符串String()

vowels_set = set(('a', 'e', 'i', 'o', 'u'))

print(" ".join(vowels_set))

输出:

u i e o a

Python set是无序集合,因此迭代顺序是随机的。
您可能会在多次运行中获得不同的输出。

5. join()的异常

如果可迭代元素不是字符串,则引发TypeError。

class Data:
  pass

d1 = Data()
d2 = Data()

list_data = [d1, d2]

print(",".join(list_data))

输出:

TypeError: sequence item 0: expected str instance, Data found