我有以下数据
r = ('P','A','A','P')
newval = 'Q'
newval2 = 'Z'
我想要做的是将r
的值与newval一起打印。
但为什么失败了:
print ",".join([r[0:4],newval,newval2])
所需的输出是:
P,A,A,P,Q,Z
答案 0 :(得分:2)
我想我会将它们连接成两个列表:
>>> print ",".join(list(r) + [newval, newval2])
P,A,A,P,Q,Z
答案 1 :(得分:1)
r
的类型为元组,str.join
仅接受单个级别的可迭代。因此,您可以将其他数据连接为元组,例如
r, newval, newval2 = ('P','A','A','P'), 'Q', 'Z'
print ",".join(r + (newval,) + (newval2,))
# P,A,A,P,Q,Z
或者,您可以使用itertools.chain
,就像这样
r, newval, newval2 = ('P','A','A','P'), 'Q', 'Z'
from itertools import chain
print ",".join(chain(r, newval, newval2))