Haskell中如何向给定元组添加元素构建新元组
元组添加元素实现方法
Python中元组是不可变序列,不支持原地修改添加元素,所有新增元素的操作本质都是生成新的元组对象。
元组本身支持和列表一致的+拼接运算符(你提到的++应该是笔误),只是要求运算符两侧必须都是元组类型,不能直接把单个值和元组拼接,这也是你之前尝试失败的原因。
推荐写法:直接拼接元组
把要新增的元素封装成单元素元组,和原元组拼接即可,写法简洁效率最高:
info = (13, "Arrabella") new_info = info + (3.17,)
运行后new_info的值就是目标结果(13, "Arrabella", 3.17)。
注意:单元素元组必须在元素末尾加逗号,如果你写
(3.17),Python会将其识别为浮点数3.17而非元组,此时拼接会触发类型错误。
备选写法(不推荐)
也可以先将元组转为列表,调用列表的append方法添加元素后再转回元组,但这种方式需要做两次类型转换,性能更低,没有特殊场景不建议使用:
info = (13, "Arrabella") temp_list = list(info) temp_list.append(3.17) new_info = tuple(temp_list)
内容的提问来源于stack exchange,提问作者halloleo
相关产品推荐
相关产品推荐

