为什么del是一个指令而不是python中的方法?

Ily*_*rov 6 python

为什么python的创建者更喜欢这种语法(指令)

del list[index]
Run Code Online (Sandbox Code Playgroud)

这个(方法)?

list.del(index)
Run Code Online (Sandbox Code Playgroud)

在我看来,是del属于同一个"cathegory"为append,remove,find,等,因此应该有相同的语法(是一种方法),但由于一些原因,蟒蛇的创造者实现它的指令.他们为什么这么做?

Kas*_*mvd 2

因为del是一个语句,您可以用它删除多个内容,并且因为当您想要删除时,list_name[index]实际上del您想要删除一个对象,而这是为其他对象执行的工作del,因此无需为列表创建冗余属性这样做!

删除是递归定义的,与定义赋值的方式非常相似。这里没有详细说明,而是提供一些提示。

删除目标列表会从左到右递归地删除每个目标。

删除名称会从本地或全局命名空间中删除该名称的绑定,具体取决于该名称是否出现在同一代码块的全局语句中。如果名称未绑定,则会引发 NameError 异常。

属性引用、订阅和切片的删除被传递给所涉及的主要对象;删除切片通常相当于分配正确类型的空切片(但即使这也是由切片对象决定的)。

  • 更好的问题是,为什么有一个“del”语句而不是一个“delete”内置函数? (2认同)