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 に答える