Pythonでファイルを読み込む時に使うf.read()とf.readlines()の違いを解説します2021-02-09Pythonでファイルを読み込む時に使うf.read()とf.readlines()の違いを解説しますPythonお悩み解決こんにちはPyQサポートです。今回はPythonでファイルを読み込む時に使うf.read()とf.readlines()の違いを解説します。文字列のcount()についてまとめ質問f.read()とf.readlines()はどちらもファイルから読み込む時に使うことは分かりますが、明確な違いがわからないので教えてください。下記の問題ではf.readlines()を使っていましたが、実行結果は"コナツ製薬は、0回出現します"と表示されました。その後f.read()を使ったところ正しく6回カウントされました。回出現します回答f.read()とf.readlines()の違いまずはf.read()とf.readlines()の違いを解説します。これらは戻ってくるデータの形が違います。f.read()はテキストファイルの中身を1つの大きな文字列データとして戻しますf.readlines()はテキストファイルの中身を改行文字で区切って一行ずつに分割して、リストとしてデータを返します。それぞれのメソッドから戻ってきた、データをprint()してみましょう。改行も含めた1つの大きな文字列データとしてデータが取得できます。改行コードを区切って一行一行に分解されたリストのデータが取得できます。]補足ですが、f.readlines()の代わりに、リストの要素に余計な改行が入らないようにf.read().splitlines()の方が使いやすいこともあります(しかしf.readlines()の方がメモリの使用量が少なく済みます)。文字列のcount()について次はなぜf.readlines()を使うと、実行結果が0回になるのか解説します。f.read()の結果の文字列をcount()は、文字列内にcount()の引数に指定した文字列が何回登場するかをカウントしています。ドキュメント一方で、f.readlines()の結果のリストをcount()は、カウントしています。この場合、count()の引数に指定した文字列が完全に一致するリスト内の要素の数をカウントしています。完全に一致する要素が存在しないので、0回と出力されています。まとめf.readlines()は、一行一行処理したい時に使いましょう。f.read()は、1つの文字列データとして扱いたい時に使いましょう。12:10このブログはPyQ開発スタッフが運営しています。技術書1冊分の価格ではじめるPython独学プラットフォームです。Pythonの基本から機械学習・データ分析まで、実際にコードを書きつつブラウザだけで学べます。Pythonお悩み解決で紹介しているような疑問が解決できるプラン(スタンダードプラン)もあるので、プログラミング学習をサポートする先輩プログラマーのような存在が必要になったときには、是非検討してみてくださいね。»Python学習チャンネルPython独学プラットフォームPyQ(パイキュー)の公式ブログです。PyQのリリース情報やカリキュラム紹介だけでなく、プログラミング学習者向けにPythonのQ&A、プログラミング学習tipsなどを配信しています。reserved.引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。