del バインディングの削除

最終更新:2026-09-22

del バインディングの削除

del は変数名、属性、またはコンテナ内の要素を削除する(参照を解放する)。

カテゴリキーワード/文
種類キーワード/文
Python バージョンall

📝 構文

del target [, target]*

▶ 例

下のコードを編集し「実行」をクリックすると、出力パネルに結果が表示されます:

実行結果:

[2, 3]
さらに多くのケースは近日公開予定です。

❓ よくある質問

Q`del x` と `x = None` の違いは何ですか?
A`del x` は名前の束縛を削除し、以降に `x` にアクセスすると `NameError` になります。`x = None` は `x` を `None` に向けさせるだけで、名前は残ります。`del lst[i]` はリスト要素を削除し、リストの長さが変わります。
Q`del` でリストのスライスを削除できますか?
Aできます。`del lst[1:3]` は要素の一区間を削除します。`del lst[:]` はリスト全体を空にしますが、同じリストオブジェクトを保持します(新しいリストを代入するのとは異なります)。
Q`del` はすぐにメモリを解放しますか?
Aそうとは限りません。`del` は参照を1つ解放するだけで、オブジェクトは参照カウントがゼロになり(循環参照がなければ)初めて回収されます。詳細なタイミングはインタプリタが決定します。
Web-Tutorial.com

Web-Tutorial 技術チーム

複数の開発者によって共同維持されているプログラミングチュートリアルプラットフォーム。各チュートリアルは専門分野の開発者が執筆・レビューしています。正確で信頼性の高いコンテンツを目指しています — 問題を見つけた場合はお知らせください。

100%