超初心者向けPython入門講座

仕事の効率化などにpythonを使いたい!けど何から始めらばよいか分からない、といった初心者の方向けに、pythonの導入から実用的な使い方まで、極力分かりやすくまとめたサイトです。

python Python初心者講座

第12章 Pythonでcsvファイルを読み込んでみよう

投稿日:2020-04-21 更新日:

さて、前回は「テキストファイル」の読み込みについて解説しましたね。この章では、「csvファイル」の読み込みについて解説したいと思います。

解説内容

 

1.csvファイルって何?

前回、「csvファイル」とは「拡張子がcsvになっているファイル」という説明をしましたが、ここではもう少し詳しく解説したいと思います。

結論から言うと、「csvファイル」とは「コンマ(,)区切りのファイル」のことです。

と言われてもピンとこないと思いますので、エクセルで「csvファイル」を作ってみましょう!(エクセルを持っていない方は、後で解説する方法で作ってください。)

 

①エクセルを開いて、下のように「1、2、3、4、5」と入力してください。

 

②「ファイル」→「名前を付けて保存」→「csv(コンマ区切り)」の形式を選択して、Pyhon勉強用などのフォルダに保存してください。

 

③すると、下のような「csvファイル」を作ることができます。見た目はエクセルと同じですね。

 

 

ではここで、メモ帳を開いて、先ほど作成したcsvファイルを「ドラッグ&ドロップ」してください。すると、下のように、「1、2、3、4、5」が「コンマ(,)」で区切られた形で表示されます!

このように、csvファイルはエクセルと同じように使用できますが、実は「コンマ(,)で区切られたテキストファイル」と同じであることが分かります!

 

そのため、エクセルを持っていない方でcsvファイルを作る際は、メモ帳でコンマ区切りのテキストを作成し、保存するときに「○○.csv」の形で保存することで作成できます!

 

2.csvファイルを読み込んでみよう

では、実際に読み込むための「csvファイル」を作成しておきましょう。

下のように入力し、「input.csv」という名前で保存しておいてください。(今回はメモ帳で作っていますが、エクセルを持っている方はそちらで作って構いません。)

 

さて、いよいよ「csvファイル」の読み込みにを行おうと思います。今回は「csv」というライブラリを使用します!

「input.csv」を保存した場所で下記のコードを実行してください。

import csv
f = open('input.csv', encoding='UTF-8')
data = csv.reader(f, delimiter=',')
for row in data:
    print(row)

すると、下のように出力されたと思います。形を見てわかる通り、「list」型で出力されています。([ ]で囲まれたものは「list」型だと3章の変数の時に解説しましたね)

 

では、1行ずつ解説していきます。

まず1行目は「csv」というライブラリをインポートするというものですね。ライブラリについて不安な方は、10章で解説していますので、そちらをご覧ください。

2行目は、「input.csv」というファイルを開くというものです。これは前回の「テキストファイル」の読み込み時と同じですね。

 

さて、3行目ですが、「csv」というライブラリを使ってcavファイルを読み込む場合、csv.reader(ファイル, delimiter=’,’)という形で使用します!

最後についている「delimiter」とは「区切り文字」のことなので、delimiter=’,’で、「コンマ(,)」で区切るという意味になります。

 

ここで、テキストファイルの読み込みの時と形を比べてみましょう。

テキストファイルの読み込み
data = f.read()

csvファイルの読み込み
data = csv.reader(f, delimiter=',')

ファイルである「f」の位置などが多少違いますね。こういった使い方の違いを比較しながら、それぞれの使い方を覚えてください!

 

最後に、4,5行目ですが、ライブラリの「csv」を使って読み込むと、「_csv.reader」という少し特殊な形で読み込まれます。

そのため、そのままでは出力等の処理ができません。

これを行ごとに「list」として取り出すには、ループ処理を使い、1行ずつ処理する必要があるので、下のような形が必要となります。

for row in data:
    print(row)

※ちなみに、変数にしている「row」とは、英語で「行」という意味です。

 

3.まとめ

この章では、「csvファイル」の読み込みについて解説しました。今回のポイントは以下のような点でした。

Point
  • 「csvファイル」は「コンマ(,)区切り」のファイルである。
  • 「csvファイル」を読み込むときは「csv」というライブラリを使用する。
  • ライブラリ「csv」の使い方は、csv.reader(ファイル, delimiter=’,’)である。
  • ライブラリ「csv」で読み込んだファイルは特殊な形のため、ループ処理を用いて「list」型に展開する。

 

以上で、csvファイルの読み込みについての解説を終わります。前回と合わせることで、いろいろなファイルを読み込むことができるようになりましたね!

>>前回:第11章 Pythonでテキストファイルを読み込んでみよう

>>次回:第13章 Pythonでテキストファイル・csvファイルへの書き出しをしてみよう

スポンサーリンク




スポンサーリンク




-python, Python初心者講座
-,

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

pyinstallerを使ったPythonのexe化(重くならない方法)

今回は、「pyinstaller」を使ってPythonをexe化して配布できるようにする方法について解説したいと思います。 Pythonをexe化することで、Pythonの環境を構築していない人でも使 …

第13章 Pythonでテキストファイル・csvファイルへの書き出しをしてみよう(write)

この章では、「テキストファイル」と「csvファイル」への書き込みについて解説したいと思います。Pythonで行った処理を保存する方法になりますので、しっかりと使えるようになりましょう! 解説内容 テキ …

第10章 Pythonのライブラリを使ってみよう(anacondaでの導入解説)

この章では、Pythonを使う上でとても重要な「ライブラリ」について、導入から使い方まで説明していこうと思います。 解説内容 そもそもライブラリって何? さっそくライブラリを使ってみよう ライブラリを …

Pandasの基本(dataframe作成、データ抽出、csv読み込み等)

今回は、Pyhonでデータを扱う際に使えるととても便利な「Pandas」について解説したいと思います。 また、データを扱う際に使用する代表的なライブラリとして「numpy」がありますが、2つのライブラ …

Pythonで桁数やゼロ埋めを行う方法(format)

今回は、pythonで「format」を用いて、数字や文字の桁数をそろえたり、ゼロ埋めする方法について解説します。 解説内容 formatの基本的な使い方と桁数指定 ゼロ埋めの方法 文字列との組み合わ …

スポンサーリンク





初めまして、サイトを運営しているキユと申します。

このサイトでは、まったくの初心者がPythonを使って、単純作業や仕事を効率化できるようになるまでに必要なことをまとめています。