展开元组进行打印

unroll a tuple for print

我想将 tuple 的值附加到字符串。但是我不明白它与切片一起工作...

实际上我只想要下面 out[18] 中的值,而不是 '{0}'.format(thetuple).

中的括号、空格和逗号

有什么想法吗?

In [16]: cg = (3,1)

In [17]: cg[0:2]
Out[17]: (3, 1)

In [18]: 'cg{0[0]}{0[1]}'.format(cg)
Out[18]: 'cg31'

In [19]: 'cg{0[0:2]}'.format(cg)
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-19-a450c51616c2> in <module>()
----> 1 'cg{0[0:2]}'.format(cg)

TypeError: tuple indices must be integers or slices, not str

我会这样做:

>>> st = ''.join(str(s) for s in cg)
>>> st
'31'

您遍历元组并在空字符串上使用 .join()。确保在迭代时将 tuple 中的每个元素转换为 str

我会这样做:

string = ''
for i in (3,1):
    string+=(str(i))
print string

输出为 31 :)