ホームページ >バックエンド開発 >Python チュートリアル >Python 3 でファイルを処理するときに「TypeError: a bytes-like object is required, not 'str'」を修正する方法?
Python 3 でのファイル コンテンツの処理: 「TypeError: 'str' ではなく、バイトのようなオブジェクトが必要です」の解決
Python 2.7 では、ファイルから行を読み取って操作を実行するのは簡単でした。ただし、Python 3.5 に移行すると、for ループ内の文字列比較を含む "if" ステートメントで「TypeError: a bytes-like object is required, not 'str'」という問題が発生する可能性があります。この不一致は、Python 3 でのファイル コンテンツの処理の違いから発生します。
Python 3 では、ファイルはデフォルトでバイナリ モードで開かれます。つまり、ファイルから読み取られたすべてのデータは文字列ではなくバイト オブジェクトとして返されます。これにより、for ループ内で文字列比較を実行するときにエラーが発生する可能性があります。
この問題を解決するには、次の 2 つのオプションがあります:
これらの方法のいずれかに従うことで、ファイルのコンテンツが Python 3 で正しく処理されることを保証し、TypeError を防ぎ、中断することなくコーディングを続行できるようにします。
以上がPython 3 でファイルを処理するときに「TypeError: a bytes-like object is required, not 'str'」を修正する方法?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。