10

考虑以下...

In [1]: del []

In [2]: del {}
  File "<ipython-input-2-24ce3265f213>", line 1
SyntaxError: can't delete literal

In [3]: del ""
  File "<ipython-input-3-95fcb133aa75>", line 1
SyntaxError: can't delete literal

In [4]: del ["A"]
  File "<ipython-input-5-d41e712d0c77>", line 1
SyntaxError: can't delete literal

有什么特别之处[]?我希望这也会提高SyntaxError。为什么不呢?我在 Python2 和 Python3 中观察到了这种行为。

4

1 回答 1

13

del语句语法允许使用,target_list并且包括变量名的列表或元组。

它旨在一次删除多个名称:

del [a, b, c]

这相当于:

del (a, b, c)

或者

del a, b, c

但是 python 并不强制列表实际上包含任何元素。

表达方式

del ()

另一方面语法错误;()在这种情况下被视为文字空元组。

于 2013-01-12T23:45:55.310 回答