Python讀取與存儲文件內容
一、.csv文件
讀取:
import pandas as pd souce_data = pd.read_csv(File_Path)
其中File_path是文件的路徑
儲存:
import pandas as pd souce_data.to_csv(file_path)
其中,souce_data格式應該為series或者Dataframe格式
二、Excel文件
讀取:
import xlrd as xl data_excel = xlrd.open_workbook(file_path) souce_data = data_excel.sheet_by_name(sheet) row_len = souce_data.nrows col_len = souce_data.ncols for i in range(row_len): for j in range(col_len): print(souce_data.cell_value(i,j))
其中,open_workbook(file_path)函數是打開文件file_path,data_excel.sheet_by_name(sheet)函數是打開sheet中的文件並賦值給souce_data。souce_data.nrows與souce_data.ncols是分別計算表格的行數與列數。
三、txt文件
讀取:
Python對txt的內容讀取有三類方法:read()、readline()、readlines(),這三種方法各有利弊,下面逐一介紹其使用方法和利弊。
1.read():
read()函數通過一次性讀取文件的所有內容放在一個大字符串中,即存在內存中
with open(file_path) as f: souce_data = f.read() print(souce_data)
read()的優勢:方便、簡單;一次性獨讀出文件放在一個大字符串中,速度最快。
read()的弊端:文件過大的時候,占用內存會過大
2.readline():
readline()逐行讀取文本,結果是一個list
1 with open(file_path) as f: 2 line = f.readline() 3 while line: 4 print(line) 5 line = f.readline()
readline()的優勢:占用內存小,逐行讀取。
readline()的弊端:由於是逐行讀取,讀取速度比較慢
3.readlines():
readlines()一次性讀取文本的所有內容,結果是一個list
with open(file) as f: for line in f.readlines(): print line
這種方法讀取的文本內容,每行文本末尾都會帶一個'\n'換行符 (可以使用L.rstrip('\n')去掉換行符
readlines()的利端:一次性讀取文本內容,速度比較快
readlines()的弊端:隨着文本的增大,占用內存會越來越多
儲存:
with open(file_path,'w') as f: f.write(souce_data)
四、儲存與讀取json文件
存儲:
import json with open(file_path,'w') as cf: cf.write(json.dumps(souce_data))
讀取:
import json with open(file_path,'r') as rf: souce_data = rf.read() souce_data = eval(souce_data)