>>> 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文档案例1是正确的,并且还有另一种语法方式存在于这个回答中,所以案例3也是正确的,但据我所知,在python中不存在del方法,案例2是如何有效的。我搜索了整个python文档,但找不到。
更新:如果我自己在模块中编写del方法,同时用例2,解释器是如何区分它们,还是会通过错误来区分它们,尽管我直到现在还没有尝试过
发布于 2018-11-15 15:32:50
所有这些都是相同的,del是yield或return的关键字,(list[1])计算为list[1]。所以del(list[1])和del (list[1])是一样的。对于基本情况,由于您没有(),所以需要强制使用额外的空间,因此是del list[1]。
编辑:您不能修改del,因为它是语言关键字。
发布于 2018-11-15 15:33:16
对于关键字(如if或del),括号不是强制性的,但如果您愿意,可以添加一些。
完全一样的事情
https://stackoverflow.com/questions/53322726
复制相似问题