Python:CSV、Json、Excel读写
CSV
CSV (Comma Separated Values)逗号分隔值格式,是一种常见的数据格式,以纯文本形式存储表格数据。
csv.reader(csvfile,dialect =‘excel’,** fmtparams)
import csv
##读
with open('test.csv','rb') as myFile:
lines=csv.reader(myFile)
for line in lines:
print line
##写
with open('eggs.csv', 'wb') as csvfile:
spamwriter = csv.writer(csvfile, delimiter=' ',
quotechar='|', quoting=csv.QUOTE_MINIMAL)
spamwriter.writerow(['Spam'] * 5 + ['Baked Beans'])
spamwriter.writerow(['Spam', 'Lovely Spam', 'Wonderful Spam'])
Json
import json
dict_1 = {"City":"Nanjing", "Year":2018, "Province":"Jiangshu"}
# dumps:将python中的 字典 转换为 字符串
str_1 = json.dumps(dict_1)
# loads: 将 字符串 转换为 字典
dict_2 = json.loads(str_1)
# dump: 将数据写入json文件中
with open("./test.json", "w") as f:
json.dump(dict_1, f,)
# load:把文件打开,并把字符串变换为数据类型
with open("./test.json", "r") as f:
dict_3 = json.load(f)
Excel
##xlrd模块
文件打开和获取
import xlrd #导入模块
data = xlrd.open_workbook('excelFiles.xls') #打开一个excel
table = data.sheets()[0] #通过索引顺序获取
table = data.sheet_by_index(0) #通过索引顺序获取
table = data.sheet_by_name(u'Sheet1') #通过名称获取
##获取行/列的值
table.row_value(i)
table.col_value(i)
##获取行数/列数
nrows = table.nrows
ncols = table.ncols
##获取单元格值
cell_A1 = table.cell(0,0).value
cell_C4 = table.cell(2,3).value
import xlrd
workbook = xlrd.open_workbook(u'test.xls')
sheet_names = workbook.sheet_names() #获取列名
for sheet_name in sheet_names:
sheet2 = workbook.sheet_by_name(sheet_name) #打印sheet页名称
print(sheet_name)
rows = sheet2.row_values(3) #打印第四行,从0行开始计数
cols = sheet2.col_values(1) #打印第二列,从0列开始计数
print(rows)
print(cols)