`os.listdir` によってリストされたファイルを開くときに Python が FileNotFoundError を発生させるのはなぜですか?

Mary-Kate Olsen
リリース: 2024-11-20 16:56:17
オリジナル
575 人が閲覧しました

Why Does Python Raise a FileNotFoundError When Opening Files Listed by `os.listdir`?

Python は、os.listdir によってリストされたファイルを開こうとすると FileNotFoundError を発生させます

Python で、os を使用してディレクトリ内のファイルを反復処理しようとすると、 .listdir は、ファイルが存在しているにもかかわらず FileNotFoundError を発生させることがあります。

これは、os.listdir がディレクトリ パスを含まずにファイル名のみを返すためです。その結果、open がファイル名のみを使用してファイルにアクセスしようとすると、ファイルが現在のディレクトリに見つからないため失敗します。

この問題を解決するには、os.path.join を使用してディレクトリの先頭に追加します。 os.listdir によって返される各ファイル名へのパス:

path = r'E:/somedir'

for filename in os.listdir(path):
    with open(os.path.join(path, filename)) as f:
        # process the file

# Ensure file closure
ログイン後にコピー

さらに、ファイルのクローズを自動的に処理するには with ブロックを使用することが賢明です。

以上が`os.listdir` によってリストされたファイルを開くときに Python が FileNotFoundError を発生させるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート