※このページではアフィリエイト広告を利用しています

【Python応用】「CSV」ファイルの読み込み・書き込み操作方法とiniファイルの読込み方法

Python

ここではPythonにおける「CSV」データの操作方法について解説しています。

この記事の対象

  • csvファイルを読込みたい方
  • codecsの使用方法を知りたい方
  • iniファイルの読込み方法を知りたい方
スポンサーリンク
スポンサーリンク

「CSV」とは

「CSV(Comma-Separated Values)」というカンマ区切りのテキストデータのファイル形式です。また、Web上のデータを落す際、誰でも一度はCSV形式のデータを見たことがある程、一般的な形式だと言えます。

似た形式にSSV(Space-Separated Values)とTSV(Tab-Separated Values)という形式があります。前者は半角スペースで区切られたもので、後者はタブで区切られたものになります。

「CSV」データの読み込み

以下のプログラムは任意の「CSV」データを読み込んで出力する内容になっています。ここでは、「test.csv」という名前で以下のようなデータを読み込んでみます。

「test.csv」の内容
#「CSV」データの読み込み
import codecs
#1---ファイルの指定
data_name = "test.csv"
csv_data = codecs.open(data_name,mode = "r",encoding="shift_jis").read()
#2---データ内容
data =[]
rows_data = csv_data.split("\r\n")
for row in rows_data:
    if row == "":continue
    cell_data = row.split(",")
    data.append(cell_data)
#3---出力
for out_data in data:
    print(out_data[0],out_data[1],out_data[2])

1の部分でファイルを指定します。ここで注意が必要なのが、open()メソッド内の「encoding」がshift-jisの点です。ExcelのCSVファイルの出力形式がshift-jisなので、ここではshift-jisを用いています。

次に2の部分でdataという格納する箱を用意して、区切りごとに格納しています。最後の3の部分で出力しています。

「CSV」データの書き込み

以下のプログラムは任意のデータをCSVファイルに書き込む内容になっています。

#「CSV」データの書き込み
import csv,codecs

#1---ファイルの指定
data_name = "test.csv"
with codecs.open(data_name,mode = "w",encoding="shift_jis") as out_data:
#2---データ内容
    write_data = csv.writer(out_data,delimiter=",",quotechar='"')
    write_data.writerow(["Time","ID","推移"])
    write_data.writerow(["9:00:00","8","1560"])
    write_data.writerow(["9:00:01","9","1780"])
    write_data.writerow(["9:00:02","10","2000"])

1の部分でファイルを指定します。ここで注意が必要なのは「mode=”w”」として、書き込みを指定している点です。次に2の部分で書き込みを行っています。ポイントとしては、「csv.writer」としてdelimiter(区切り文字)、quotechar(データをどの記号で囲むか)を指定しています。

csvwriter.writerow(row)

rowの部分に任意のデータを指定して、with構文で繰り返し書き込んでいます。

他にも「CSV」ファイルの便利な操作方法があります。以下のサイトを参考にしてみて下さい。

その他、CSVファイルの操作

項目内容
「Pandas」を用いた複数のCSVファイルの結合方法同一フォルダ内にあるCSVを「pandas」を用いてまとめて結合する方法について解説しています。

iniファイルの読込み方法 ⇒ configparser

configparserの基本的な型

import configparser

config_ini = configparser.ConfigParser()

ライブラリの「configparser」を指定します。

iniファイルの読込み方法

読込むファイルは「test.ini」として、中身は以下とします。

[NAME]
MAN = HOGE

読込み方法は以下になります。

import configparser

config_ini = configparser.ConfigParser()
config_ini.read('test.ini', encoding='utf-8')
name = config_ini['NAME']['MAN']
print(name)

それでは解説になります。最初にconfigparserを指定しています。次に読込みたい対象のファイルをread()関数で読込んでいます。

最後にどのKeyを読込みたいか指定しています。

【結果】

HOGE
タイトルとURLをコピーしました