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

在Python中自动增长列表

荀嘉熙
2023-03-14
问题内容

有没有办法在Python中建立一个自动增长的列表?我的意思是制作一个列表,该列表将在引用不存在的索引时增长。基本上是Ruby数组的行为。

提前致谢!


问题答案:

当然有可能,您只需要使用list的子类即可。

class GrowingList(list):
    def __setitem__(self, index, value):
        if index >= len(self):
            self.extend([None]*(index + 1 - len(self)))
        list.__setitem__(self, index, value)

用法:

>>> grow = GrowingList()
>>> grow[10] = 4
>>> len(grow)
11
>>> grow
[None, None, None, None, None, None, None, None, None, None, 4]


 类似资料:
  • 主要内容:使用 counters 集合,创建 Javascript 函数,使用 Javascript 函数MongoDB 中没有像 SQL 中那样可以赋予某个字段自动递增的功能,默认情况下 MongoDB 的 _id 字段是系统自动生成的 12 字节的唯一标识,但是在某些情况下我们可能需要在 MongoDB 的某个字段上实现类似 SQL 中的自动递增功能。 因为 MongoDB 中没有实现这个功能,所以我们需要通过编程的方式来实现。本节中我们将通过两个集合(counters 和 tutorial

  • 问题内容: 使用Postgres,我试图用SQL自动编号主键。但是,这给了我一个错误。 错误: 知道为什么吗? 问题答案: Postgres 10或更高版本 列(请参见下文)保持不变。但是考虑一个 专栏。Postgres10实现了此标准SQL功能。 手册中的基本语法和信息。 __用列 创建 表 将 列 添加 到现有表 表可能填充也可能不填充行。 同时使它成为PK(表还不能拥有PK): 有关的: 如

  • 我实际上正在研究如何在Java中使用android studio自动增加listview中的项目中的texview。 问题是,我有一个“事件”列表要显示,我想在我从incidentList获得的事件名称之前有一个TextView,比如“Incident1”,然后后面的元素表示“Incident2”和“Incident3”。 我没有找到什么东西告诉我如何自动增加列表中每个元素的textview。 请

  • 问题内容: 嗨,我想使用Java在mongodb中自动递增。我对此完全陌生。在文档中,我找到了这样的解决方案: 谁能建议我如何使用Java做到这一点?我对此完全陌生。 问题答案: 首先使用“ 创建自动递增序列字段”,您应该使用mongoDB shell创建集合,并且集合应为: 因此,您将获得包含如下字段的集合,现在在Java中创建函数,并且此函数具有作为字符串的参数,因此如下所示: } 上面的函数

  • 我有以下问题: 示例: 输入:[0,8,4,12,2,10,6,14,1,9,5,13,3,11,7,15]输出:6顺序:[0,2,6,9,13,15]或[0,4,6,9,11,15]或[0,4,6,9,11,15] 这是一个DP问题,我确实有一些问题在记忆步骤。下面是我的代码: 多谢了。

  • 问题内容: 如何从Android客户端自动递增存储在Firebase中的值? 当前:我声明。当我增加时,我看到值2、3等被存储。很好,但是当我重新运行项目时,再次设置为等于1。 我希望它的行为像静态变量一样,因此我可以创建一个从1到无穷大的id,而无需重置。 更新失败 我使用以下代码将Firebase参考和一个字符串传递给函数incrementCounter。 现在,我尝试在oncomplete方