当前位置: 首页 > 面试题库 >

列表与元组,何时使用每个?

元昊苍
2023-03-14
问题内容

在Python中,何时应使用列表以及何时使用元组?

有时您别无选择,例如,如果您有

"hello %s you are %s years old" % x

那么x必须是一个元组。

但是,如果我是设计API并选择数据类型的人,那么指导原则是什么?


问题答案:

元组有一种强大的文化,即用于异构集合(类似于您struct在C中使用s的元组)和列表用于同类集合(类似于用于数组的形式)。但是我从来没有与其他答案中提到的可变性问题完全吻合。可变性有它的作用(实际上您不能更改一个元组),而同质性没有得到强制执行,因此似乎没有那么有趣的区别。



 类似资料:
  • 问题内容: 如果要创建一维数组,则可以将其实现为列表,也可以使用标准库中的“数组”模块。我一直将列表用于一维数组。 我想改用数组模块的原因或情况是什么? 是为了性能和内存优化,还是我缺少明显的东西? 问题答案: 基本上,Python列表非常灵活,可以保存完全异构的任意数据,并且可以在摊销后的固定时间内非常高效地附加到它们。如果您需要高效而又省时地缩小和增加列表,则可以采用这些方法。但是它们 比C数

  • 我必须将元组与元组列表进行比较,如果整数小于列表中的任何元组,则返回True。例如,如果我有将返回True,因为单独元组(“番茄”,10,5)中的整数比列表中的元组(“橙色”,11,6)小,但是如果我有将返回False。 我试试这个 但不工作时,它应该返回假,我不知道为什么? 注意:字符串对于这个问题并不重要,我必须忽略它。

  • 对于上述代码,我得到的输出为: 但我的期望是得到。 你能指导我实现这一点吗?

  • 问题内容: 我有一个类似于以下的元组列表: 我想创建一个简单的单线,这将给我以下结果: 就像执行以下操作: 我相信这很简单,但是我想不到。 注意:我已经看过类似的问题: 如何在Python中的元组列表中对每个元组的第一个值求和? 问题答案: 使用和: 要么: 结果:

  • 问题内容: 我有一个元组元组-例如: 我想按顺序将其转换为所有元素的平面一维列表: 我一直在尝试通过列表理解来实现。但我似乎无法弄清楚。我能够通过for-each循环来完成它: 但是我觉得必须有一种方法来理解列表。 一个简单的只是给您一个列表列表,而不是单个元素。我以为可以通过使用拆包运算符然后将列表拆包来建立此基础,如下所示: 要么 …但是那没用。有任何想法吗?还是我应该坚持下去? 问题答案:

  • 我有一些这样的疑问: 这会将此 SQL 查询发送到数据库: 现在我想将这种类型的查询发送到数据库: 我需要传递列表吗?