Python向tup添加项

2024-03-29 10:30:55 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一些object.ID-s,我试图将其作为元组存储在用户会话中。当我添加第一个元组时,它可以工作,但是元组看起来像(u'2',),但是当我尝试使用mytuple = mytuple + new.id添加新元组时,得到了错误can only concatenate tuple (not "unicode") to tuple


Tags: to用户idonlynewobject错误unicode
3条回答

从元组到列表到元组:

a = ('2',)
b = 'b'

l = list(a)
l.append(b)

tuple(l)

或附加更长的项目列表

a = ('2',)
items = ['o', 'k', 'd', 'o']

l = list(a)

for x in items:
    l.append(x)

print tuple(l)

给你

>>> 
('2', 'o', 'k', 'd', 'o')

这里的要点是:List是一个可变的序列类型。因此,可以通过添加或删除元素来更改给定的列表。Tuple是一种不可变的序列类型。你不能换元组。所以你必须创建一个新的。

由于Python 3.5(PEP 448),您可以在元组、列表集和dict中进行解包:

a = ('2',)
b = 'z'
new = (*a, b)

您需要将第二个元素设为1元组,例如:

a = ('2',)
b = 'z'
new = a + (b,)

相关问题 更多 >