小能豆

Python 将项目添加到元组

py

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


阅读 15

收藏
2024-10-25

共1个答案

小能豆

您遇到的问题是由于尝试将字符串(new.id,在您的情况下可能是 Unicode)连接到元组而引起的。在 Python 中,您只能将两个元组连接在一起,而不能直接将元组和字符串连接在一起。

解决方法如下:

1.new.id连接之前先转换为元组

要将现有的元组mytuple与新的元组连接起来new.id,需要转换new.id为元组,如下所示:

mytuple = mytuple + (new.id,)

这确保了new.id(字符串)被包装在元组中,因此它可以与现有的元组连接起来mytuple

解释:

  • (new.id,)创建一个包含的单元素元组new.id
  • 然后,您可以将这个单元素元组连接到mytuple,Python 将正确处理元组的加法。

例子:

# 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'):。

2024-10-25