如何在 Python 中将单元素列表完美转换为元组?

新手上路,请多包涵

所以我正在尝试这样做:

 tuple([1])

我期望的输出是:

 (1)

但是,我得到了这个:

 (1,)

但如果我这样做:

 tuple([1,2])

它完美地工作!像这样:

 (1,2)

这太奇怪了,我不知道为什么元组函数会导致这个结果。

请帮我解决它。

原文由 Mars Lee 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 668
2 个回答

这是一个非常常见的问题,以至于 Python Wiki 有一个专门的页面

一元元组

一元素元组看起来像:

1,

这里的基本元素是尾随逗号。对于任何表达式,括号是可选的,因此您也可以编写单元素元组,例如

(1,)

但定义元组的是逗号,而不是括号。

原文由 Akshat Mahajan 发布,翻译遵循 CC BY-SA 3.0 许可协议

利用

.format(str(tuple(mwo)).replace(",)",")")))

这将替换第一个元素的逗号。

原文由 vaibhav singh 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题