バグは正常に解決されました: OSError: [Errno 9] Bad file descriptor
異常な解釈
Python コードを作成する過程で、次のエラーが発生します。
OSエラー: [Errno 9] 不正なファイル記述子
エラーを中国語に翻訳すると、次のようになります。
無効なファイル ハンドル (-1) がos.close()
関数に渡され、ファイル ハンドルを閉じようとしました。
ファイル ハンドルが無効であるため、TypeError が発生し、エラー メッセージが表示されます"Invalid file handle: [WinError 6]"
(コードが Windows OS で実行されている場合)。
実際のエンコード エラーは次の画像に示されています。
ソリューション
このバグを解決するのは簡単です。ファイル ハンドルが正しいかどうかを確認するだけです。
コードを確認して、ファイルが開くかどうかを確認します。
エラー再発
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
その他の学習教材
- 「Snowball Learning Python」コラムおよび物理書籍: https://dream.blog.csdn.net/article/details/131268344
- 《爬虫100例》:https://blog.csdn.net/hihell/category_9280209.html
- 《Python爬虫120》:https://blog.csdn.net/hihell/category_11079529.html