嗨,请问有没有办法编辑嵌套列表中的这个元组的内容。我问,因为我的读数告诉我元组是不可变的。使用什么代码可以对内容进行补充和编辑:
这就是我的意思,对于n以下
n = [[(14883, 14383), (14383, 14939)], [(14939, 6703), (6703, 7277)]]
所需的输出如下:
m = [[(14883B, 14383B), (14383B, 14939B)], [(14939B, 6703B), (6703B, 7277B)]]
谢谢
答案 0 :(得分:1)
您必须使用更新的值创建一个新的元组列表,如下所示:
m = [(str(val[0])+'B', str(val[1])+'B') for val in n]
此代码使用list-comprehension并获取上一个列表中的值,并创建一个 new 列表,其中包含' B'加入。
[编辑:]您已更新了您的问题。对于更新的问题,随着更深层次的嵌套,我建议在他的答案中修改@ doniyor的方法是一种更好的方法。
答案 1 :(得分:1)
m = []
for i,(k, v) in enumerate(n):
n[i] = (str(k)+'B', str(v) + 'B')
m.append(n[i])
答案 2 :(得分:0)
你不能编辑元组,但你可以像这样做
>>> def catify(data):
... return (data[0],'cat')
...
>>> my_pet = ('Squiggly', 'dog')
>>> my_pet = catify(my_pet)
>>> print (my_pet)
("Squiggly','cat')