Pythonでdel文を使用しメモリをクリア、もしくはオブジェクトを削除してみます。
del文を使用すると、オブジェクトを削除する、または、変数、リスト、またはリストの一部などを削除することができます。
■Python
Google Colaboratory(Google Colab),Python3.7.10
■変数内に格納した値を削除する
では、del文を使用し変数内に格納した値を削除してみます。
■コード
test = 100 del test print(test)
今回はtestという変数を定義し、その中に「100」という数値を格納してみます。格納後、del文を使用し、test変数を指定し、test変数内の数値を削除(クリア)にしてみます。
削除(クリア)後、test変数内の情報をprint()関数で出力します。
■実行・検証
このスクリプトを実行してみます。
—————————————————————————
NameError Traceback (most recent call last)
<ipython-input-1-8d2e122e473b> in <module>()
3 del test
4
—-> 5 print(test)NameError: name ‘test’ is not defined
実行してみると、上記のNameErrorというエラーが発生しました。これは正常なエラーです。del文を使用し、test変数内の数値を削除(クリア)にしていますので、test変数内には何も存在しません。そのため「name ‘test’ is not defined(名前「test」が定義されていません)」というエラーが発生しました。
■リストを定義しリスト内の要素を削除する
では、次にリストを定義しリスト内の要素を削除してみます。
■コード
test_list = [10,20,30,40,50] del test_list print(test_list)
今回はtest_listというリストを角括弧([])を使用し、定義します。定義したリスト内に要素(今回は数値)を格納します。これでリストは完成となります。
格納後、del文を使用し、test_listを指定し、test_list内の要素を削除(クリア)にしてみます。
■実行・検証
スクリプトを作成後、このスクリプトを実行してみます。
実行してみると、先ほど同じNameErrorというエラーで「name ‘test’ is not defined(名前「test_list」が定義されていません)」という内容ですので、test_list内の要素が削除されていることが確認できました。
■リストの特定の項目を削除する
■コード
test_list = [10,20,30,40,50] del test_list[0] print(test_list)
なお、定義したリストから特定の項目の要素を削除する場合は、del文を使用し、test_listを指定し、その後に角括弧([])を使用します。角括弧([])内には、リストの項目の順番を指定します。リストは「0」から始まります。今回は「0」としています。これでリスト内で0番目の項目を削除し、リスト内の残りの項目は削除されません。
■クラスを定義しオブジェクトを削除する
では、次にクラスを定義しオブジェクトを削除してみます。
■コード
class test: string = "Hello,World!" del test print(test)
今回はtestというクラスを定義します。定義したクラス内にstringというクラス変数を定義し、その中に文字列を格納します。
格納後、del文を使用し、定義したtestクラスを指定します。
指定後、print()関数でtestクラス内の情報を出力します。
■実行・検証
このスクリプトを実行してみます。
実行してみると、NameErrorというエラーで「name ‘test’ is not defined(名前「test」が定義されていません)」という内容が出力されましたので、オブジェクトが削除されていることが確認できました。
コメント