os.listdir によって返されるファイル名の FileNotFoundError
Python では、os.listdir を使用してディレクトリ内のファイルを反復処理するときに、次のような場合があります。ファイルが存在するにもかかわらず、FileNotFoundError が発生しました。
原因:
os.listdir は、完全なパス (例: 'foo.txt') ではなく、ファイル名 (例: 'foo.txt') のみを返します。 、「E:/somedir/foo.txt」)。ファイルを開くときは、完全なパスが必要です。
解決策:
os.path.join を使用して、ファイル名の先頭にディレクトリ パスを追加します:
import os path = r'E:/somedir' for filename in os.listdir(path): with open(os.path.join(path, filename)) as f: ... # process the file
さらに、with ブロックを使用すると、ファイルが自動的に閉じられます。
以上がPython で os.listdir を使用すると FileNotFoundError が発生するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。