1 不同平台、框架、语言之间交换数据
由于.txt文件不具备语义标签,不适合用来做不同平台、框架及语言之间交换数据的格式。
不同平台、框架及语言之间交换数据的格式:CSV、TSV、json等
2 CSV文件
2.1 CSV文件的读写不需要额外下载库,系统自带
2.2 读取数据
导入模块
import csv
读取数据
with open(‘C:\\data.csv’,encoding=’utf8’) as f:
reader=csv.reader(f)
注:读取文件后,使用next()方法将列头读取,然后再使用循环读取其中的数据
v_lietou=next(reader)
注:可使用namedtuple将列头和值对应:
ROW=namedtuple(‘ROW’,v_lietou)
则对于任意一个line:
line=ROW(*line)
注:CSV文件支持直接用字典表的方式读取:
with open(‘C:\\data.csv’,encoding=’utf8’) as f:
reader=csv.DictReader(f)
2.3 写入数据
导入模块
import csv
写入数据
headers=[‘name’,’dep’,’sal’] val=[(‘tom’,’dev’,600),(‘peter’,’pro’,300),(‘jim’,’che’,500)] with open(‘C:\\data.csv’,’w’,encoding=’utf8’) as f: writer=csv.writer(f) writer.writerow(headers) writer.writerows(val)
注:写入单行是writerow,写入多行是writerows
注:CSV文件也支持字典表的写入
with open(‘C:\\data.csv’,’w’,encoding=’utf8’) as f: writer=csv.DictWriter(f,headers) writer.writeheader() writer.writerows(val)
3 json文件
json格式和字典表类似
json中的True,False,Null都为小写
3.1 json字符串的读写
导入模块
import json data={'名字':'tom','dep':'dev','sal':6000}
字典转换成json格式
json_data=json.dumps(data)
json格式转换成字典
data1=json.loads(json_data)
3.2 json文件的读写
写入文件:json.dump(数据,文件名)
with open('data.json','w',encoding='utf-8') as f: json.dump(data,f)
读取文件:json.load(文件名)
with open('data.json','r',encoding='utf-8') as f: data=json.load(f) print(data)
4 excel文件读取
Excel文件的读写没有自带的库,需要安装xlrd
主要的方法有:
打开文件:book=xlrd.open_workbook(文件)
获取表:sheet=book.sheet_by_index(0)或者book.sheet_by_name(名字)
获取表的数据行数:num_row=sheet.nrows
获取第i行数据:data=sheet.row_values(i)