任重而道遠
本實例依舊參考 《python 數據分析》
import csv
csvfile = open('data-text.csv', 'r')
# 這樣讀出來的文件是數組格式
# reader = csv.reader(csvfile)
# 轉化爲 python 的字典格式
reader = csv.DictReader(csvfile)
for row in reader:
print(row['Indicator'])
import json
# read 方法會把文件對象轉化爲一個字符串
jsonfile = open('data-text.json').read()
# print(type(jsonfile)) # str
data = json.loads(jsonfile)
print(type(data)) # list
for item in data:
print(item)
python 使用 open 函數讀取 csv 和 json 文件的差別:
- 在 csv 文件中讀取文件不需要調用 read ,以只讀的方式打開文件。在 json 文件中,讀取了文件的內容後將內容保存在變量 data 中。
- 在 csv 中,open 函數返回的是一個文件對象,直接對這個對象進行處理;在 json 文件中,使用 read 函數直接讀取到的是字符串。
- 二者的不同基於以下的是事實:python 的 json 庫和 csv 庫處理輸入數據的方式不一樣。csv 的 reader 函數只能處理對象,json 的loads 函數只能處理字符串。