バグは正常に解決されました: OSError: [Errno 9] Bad file descriptor (Python BUG)

バグは正常に解決されました: OSError: [Errno 9] Bad file descriptor

異常な解釈

Python コードを作成する過程で、次のエラーが発生します。

OSエラー: [Errno 9] 不正なファイル記述子

エラーを中国語に翻訳すると、次のようになります。

無効なファイル ハンドル (-1) がos.close()関数に渡され、ファイル ハンドルを閉じようとしました。
ファイル ハンドルが無効であるため、TypeError が発生し、エラー メッセージが表示されます"Invalid file handle: [WinError 6]"(コードが Windows OS で実行されている場合)。

実際のエンコード エラーは次の画像に示されています。

バグは正常に解決されました: OSError: [Errno 9] Bad file descriptor (Python BUG)

ソリューション

このバグを解決するのは簡単です。ファイル ハンドルが正しいかどうかを確認するだけです。

コードを確認して、ファイルが開くかどうかを確認します。

エラー再発

Python ファイルに次のコードを入力すると、この記事のタイトルに示されているエラーが表示されます。

import os

file_handle = -1  # 无效的文件句柄

try:
    os.close(file_handle)  # 尝试关闭无效的文件句柄
except TypeError as e:
    print(f"TypeError: Invalid file handle: {
      
      e}")

エラーメッセージは次のとおりです

Traceback (most recent call last):
  File "E:/pythonProject/QueueDemo.py", line 6, in <module>
    os.close(file_handle)  # 尝试关闭无效的文件句柄
OSError: [Errno 9] Bad file descriptor

その他の学習教材

おすすめ

転載: blog.csdn.net/hihell/article/details/131624433