よく使うデータ形式#
csv#
csv.reader()#
csv.reader()
でファイルを読み込む- 引数で
delimiter='\t'
のように任意の区切り文字を指定可能
import csv
with open('sample.csv', 'r', encoding='utf-8', newline='') as f:
csv_file = csv.reader(f)
Tip
Windows では 改行コードが '\r\n' のため open 関数に newline=''`と記述して意図しない改行を予防しておくこと。
- 読み込んだファイルはfor 文で 行ごとにリストで形式で取得可能
csv.DictReader()#
- csv ファイルを辞書型で読み込むには
csv.DictReader()
を用いる - デフォルトでヘッダーである 1行目(見出し行)の値が辞書のキーとなる
import csv
with open('sample.csv', 'r', encoding='utf-8', newline='') as f:
csv_file = csv.DictReader(f)
1行目にヘッダー(見出し行)がない場合は引数に`fieldnames'を指定
JSON#
json.load()#
json.load()
にてJSONファイルを辞書型として読み込む
json.dump#
json.dunmp()
にて辞書をJSONファイルとして保存する
import json
data ={"key":"value"}
with open('sample.json','w',encoding='utf-8') as j_file:
json.dump(data, j_file, indent=4)
YAML#
- PyYAML をインストール
- yaml ファイルを辞書形式で読み込むには
yaml.safe_load()
import yaml
with open('testbed_topology.yaml', 'r', encoding='utf-8') as f:
topology = yaml.safe_load(f)
- yaml ファイルに書き込むには
yaml.dump()
で引数にファイルオブジェクトを指定
dict_data = { 'R1': 'Cisco', 'address': 100, 'parameter': [1, 2, 3] }
with open('router.yaml', 'w', encoding='utf-8') as yaml_file:
yaml.dump(dict_data, yaml_file)