python将列表附加到元组
我有以下元组:python将列表附加到元组,python,tuples,Python,Tuples,我有以下元组: vertices = ([0,0],[0,0],[0,0]); 在每个循环中,我想附加以下列表: [x, y] 我应该如何处理它?您不能修改元组。您需要将元组替换为包含附加顶点的新元组,或者将其更改为列表。列表只是一个可修改的元组 vertices = [[0,0],[0,0],[0,0]] for ...: vertices.append([x, y]) 不能将列表附加到元组,因为元组是(不能更改)。但是,将元组附加到列表很容易: 您可以将元组添加到一起以创建一
vertices = ([0,0],[0,0],[0,0]);
在每个循环中,我想附加以下列表:
[x, y]
我应该如何处理它?您不能修改元组。您需要将元组替换为包含附加顶点的新元组,或者将其更改为列表。列表只是一个可修改的元组
vertices = [[0,0],[0,0],[0,0]]
for ...:
vertices.append([x, y])
不能将
列表
附加到元组
,因为元组是(不能更改)。但是,将元组附加到列表很容易:
您可以将元组添加到一起以创建一个新的、更长的元组,但这与元组的用途大相径庭,并且随着元素数量的增加,元组的速度会减慢。在这种情况下,最好使用列表。您可以连接两个元组:
>>> vertices = ([0,0],[0,0],[0,0])
>>> lst = [10, 20]
>>> vertices = vertices + tuple([lst])
>>> vertices
([0, 0], [0, 0], [0, 0], [10, 20])
您可能需要一个列表,如上所述。但如果确实需要元组,可以通过连接元组来创建新元组:
vertices = ([0,0],[0,0],[0,0])
for x in (1, 2):
for y in (3, 4):
vertices += ([x,y],)
或者,为了提高效率,在构建元组时使用列表,并在末尾转换它:
vertices = ([0,0],[0,0],[0,0])
#...
vlist = list(vertices)
for x in (1, 2):
for y in (3, 4):
vlist.append([x, y])
vertices = tuple(vlist)
在任一顶点的末尾,顶点是:
([0, 0], [0, 0], [0, 0], [1, 3], [1, 4], [2, 3], [2, 4])
不确定我是否理解您的意思,但如果您想将x,y附加到每个顶点,可以执行以下操作:
vertices = ([0,0],[0,0],[0,0])
for v in vertices:
v[0] += x
v[1] += y
仅供参考,在python中,您不需要以分号结尾。您的问题有点不清楚,能否举例说明您想要什么?您希望它们如何附加?等
vertices = ([0,0],[0,0],[0,0])
for v in vertices:
v[0] += x
v[1] += y