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

在Python中创建列表-偷偷摸摸地进行着吗?

钦宏义
2023-03-14
问题内容

抱歉,如果这没有任何意义,我是Python的新手!

从一个解释测试中,我可以看到,list()并且[]都产生一个空列表:

>>> list()
[]
>>> []
[]

根据到目前为止的经验,创建对象的唯一方法是调用其构造函数(__init__),但是仅键入时我看不到这种情况[]。因此,通过执行[],Python是否会将其映射到对的调用list()


问题答案:

不,Python不会调用list(),或者您可以[]通过分配给list来影响创建的类型,但您不能这样做:

>>> import __builtin__
>>> __builtin__.list = set
>>> list()
set([])
>>> []
[]

[]是用于创建列表的语法。它是一种内置类型,具有特殊的语法,就像字典和字符串,整数和浮点数以及许多其他类型一样。

创建类型的实例 可以通过调用类型来完成,例如list()-会依次为您调用类型的构造函数和初始化程序。__init__直接调用初始化程序()
不会 创建该类型的新实例。可以调用构造函数(__new__),但您不应直接调用它。



 类似资料:
  • 开发过程中,UI他们的没有封板的概念,说是做完了,我们一边开发,图一边变更,还不通知,最后还说没按照图来开发,恶心至极,如何防止figma上他们修改,能否导出或者查看修改记录? 他们的修改记录他们是不是能删除?

  • 我想显示很多星星,当用户触摸其中一颗星星的内部时,我可以改变星星的颜色,并将星星id附加到数组中。 我有一个恒星坐标数组=[[恒星1的顶点坐标],[恒星2的顶点坐标],...,[恒星60的顶点坐标]] 上面的代码显示了我所有的星星,现在我需要为我的每个星星创建一个触摸事件,这样当一个星星被触摸时,我可以将一个星星ID追加到一个数组中。 我该怎么做? 上面的代码是如果我有一颗星的话可以使用的,但是如

  • 我试图在一个libgdx游戏中实现触摸滚动。我有一个很宽的图像,是一个房间的全景。我希望能够滚动图像,让用户可以看到房间的四周。我有它,所以我可以滚动一定的距离,但当一个新的触摸拖动事件被注册的图像被移回到原来的位置。 这就是我实现它的方式 } 在InputProcessor中 在这个问题LibGdx如何使用OrthographicCamera?滚动的帮助下,我做到了这一步?。然而,这并没有真正解

  • 使用JPA EntityManager和JPA查询对象,我如何覆盖在查询中惰性获取注释@OneToMany(fetch=FetchType.EAGER)的内容? 如果我有hibernate查询对象,我可以让它创建一个criteria对象,并使用它将fetch类型设置为lazy。但我必须使用JPA查询对象。这个问题有什么解决办法吗?

  • 输出: 如果要执行此行为,API应该让函数返回而不是流。 换句话说:链接

  • 问题内容: 我正在尝试创建一个非常有用的等效列表。以下设计效果很好: 使用方法如下: 我应该添加什么到默认列表中以支持以下行为? 问题答案: 在给出的示例中,您首先尝试检索列表中不存在的值,就像这样做一样,Python首先检索列表中的第三个(索引2)元素,然后继续在该列表中获取名为“ a”的元素对象-因此,您还必须实现对方法的自动扩展行为,如下所示: