我有一些 object.ID-s,我尝试将其作为元组存储在用户会话中。当我添加第一个时,它可以工作,但元组看起来像,(u'2',)但当我尝试使用mytuple = mytuple + new.idgot error添加新的时can only concatenate tuple (not "unicode") to tuple。
(u'2',)
mytuple = mytuple + new.id
can only concatenate tuple (not "unicode") to tuple
您遇到的问题是由于尝试将字符串(new.id,在您的情况下可能是 Unicode)连接到元组而引起的。在 Python 中,您只能将两个元组连接在一起,而不能直接将元组和字符串连接在一起。
new.id
解决方法如下:
要将现有的元组mytuple与新的元组连接起来new.id,需要转换new.id为元组,如下所示:
mytuple
mytuple = mytuple + (new.id,)
这确保了new.id(字符串)被包装在元组中,因此它可以与现有的元组连接起来mytuple。
(new.id,)
# Initial tuple with one ID mytuple = (u'2',) # New ID you want to add new_id = u'5' # Concatenate by creating a tuple from the new ID mytuple = mytuple + (new_id,) # Result: (u'2', u'5') print(mytuple)
现在元组将包含两个 ID ('2', '5'):。
('2', '5')