【发布时间】:2019-04-18 17:58:30
【问题描述】:
>>> li = [1, 2, 3, 4]
>>> li
[1, 2, 3, 4]
>>> del li[2] #case 1
>>> li
[1, 2, 4]
>>> del(li[2]) # case 2
>>> li
[1, 2]
>>> del (li[1]) # case 3
>>> li
[1]
>>>
我的一位教授使用案例 2 从列表中删除项目。
根据python documentation,case 1 是正确的,并且这个answer 还存在另一种语法方式,所以 case 3 也是正确的,但据我所知,python 中不存在 del 方法,case 2 如何有效。我搜索了整个 python 文档,但找不到它。
更新: 如果我自己在我的模块中编写 del 方法并同时用例 2,python 解释器如何区分它们或者会通过错误来区分它们,尽管我直到现在才尝试过
【问题讨论】:
-
你可以在很多地方放括号而不影响任何东西。在这里,它们只是多余的。就像
return 1和return (1)一样。 -
好的,如果我在我的模块中编写 del 方法并同时使用上述方法,python 解释器如何区分它们,尽管我直到现在才尝试过。
-
案例2不是函数调用,还是语句调用。同理
if(cond)和if (cond)和if cond都是一样的。 -
你应该坚持
del ((((((((((((((((((((( list[0] )))))))))))))))))))));) -
您不能在您的模块中编写
del函数。del是一个关键字。
标签: python python-3.x