加入列表的元素

Dee*_*pta 0 python

我有一个元组列表,如:

data = [('a1', 'a2'), ('b1', 'b2')]
Run Code Online (Sandbox Code Playgroud)

我想生成一个这样的字符串: "('a1', 'a2'), ('b1'. 'b2')"

如果我这样做:','.join(data),我收到一个错误:

TypeError: sequence item 0: expected string, tuple found
Run Code Online (Sandbox Code Playgroud)

如果我想在一行中做某事而不做以下事情:

for elem in data:
  str += ',%s' % str(elem)
Run Code Online (Sandbox Code Playgroud)

那有办法吗?

mar*_*cog 14

使用生成器将元组转换为字符串然后使用join().

>>> ', '.join(str(d) for d in data)
"('a1', 'a2'), ('b1', 'b2')"
Run Code Online (Sandbox Code Playgroud)