Select Language

AI Technology Community

5.10、Python closed()関数:開いているファイルを閉じる

ファイルの使用が終了した後は、リソースを解放するためにファイルを閉じる必要があります。ファイルを閉じる方法は次のとおりです:

ファイルオブジェクト.close()

すでに閉じられたファイルに対して再度 close() 操作を実行することができ、例外が発生する心配はありません。

ファイルが閉じられた後は、そのファイルに対して読み書き操作を行うことはできません。ファイルが閉じられた後も、ファイルオブジェクトは存在しますが、その属性 closed は現在 True になり、このファイルが閉じられたことを示します。

ファイルが閉じられた後に、そのファイルに対して読み書き操作を試みると、ValueError 例外が発生します。

ファイルが閉じられた後は、closed 以外のファイルの属性は変化しません。例えば、name、mode などの属性は依然として有効で、引き続き使用することができます。

>>> fd = open("in.dat", "r")   # ファイルを開く
>>> fd.closed                                  # closed の値が False であることは、ファイルが閉じられていないことを示す
False
>>> fd.close()                                 # このファイルを閉じる
>>> fd.closed                                  # 現在、closed の値は True である
True
>>> fd.read()                                  # 読み取り操作を試みると、例外が発生する
Traceback (most recent call last):
   File "<stdin>", line 1, in <module>
ValueError: I/O operation on closed file.
>>> fd.name                                    # name 属性を確認すると、依然として有効である
'in.dat'
>>> fd.mode                                    # mode 属性を確認すると、依然として有効である
'r'


post
  • 14

    item of content
データを長期的に保存したい場合、最も簡単な方法はデータをディスクファイルに書き込むことです。これにより、プログラムを終了した後でも処理結果は長期的に有効です。
大規模ソフトウェアプロジェクトでは、ファイル操作は避けられません。この章では、普通のテキストファイルとバイナリファイルの操作方法について説明します。具体的には、ファイルを開く方法、ファイルの読み書き、ファイルモード、および with 文の使用方法などを含みます。