python学习day21
一、csv文件读操作
1.创建reader
# csv.reader(文件对象) - 获取指定csv文件中的内容,
# 返回一个迭代器,迭代器中的元素是每一行数据对应一个列表
# csv.DictReader(文件对象) - 获取指定csv文件中的内容,
# 返回一个迭代器,迭代器中的元素是每一行数据对应一个字典
# reader1 = csv.reader(open('files/北京高档酒店价格分析.csv', encoding='utf-8'))
reader2 = csv.DictReader(open('files/北京高档酒店价格分析.csv', encoding='utf-8'))
# 2.获取内容
# print(next(reader1)) # ['\ufeff酒店名称', '地区', '地址', '卫生评分', '服务评分', '设施评分', '位置评分', '评价数', '装修时间', '房间类型', '房价', '经度', '纬度', '公司', '出行住宿', '校园生活']
# print(next(reader1)) # ['北京朗丽兹西山花园酒店', '海淀区', '海淀永丰路与北清路十字路口往南800米路南', '4.8', '4.8', '4.7', '4.4', '143', '2014', '豪华套间', '9970', '116.292419', '40.095804', '0', '0', '0']
# print(next(reader2)) # {'\ufeff酒店名称': '北京朗丽兹西山花园酒店', '地区': '海淀区', '地址': '海淀永丰路与北清路十字路口往南800米路南', '卫生评分': '4.8', '服务评分': '4.8', '设施评分': '4.7', '位置评分': '4.4', '评价数': '143', '装修时间': '2014', '房间类型': '豪华套间', '房价': '9970', '经度': '116.292419', '纬度': '40.095804', '公司': '0', '出行住宿': '0', '校园生活': '0'}
# 练习:打印每个酒店对应的平均评分
# 北京朗丽兹西山花园酒店 4.6
for x in reader2:
scores = eval(f"{
x['卫生评分']} + {
x['服务评分']} + {
x['设施评分']} + {
x['位置评分']}")/4
print(x['\ufeff酒店名称'], scores)
二、csv文件写操作
1.创建writer
# csv.writer(文件对象)
writer = csv.writer(open('files/学生信息.csv', 'w', encoding='utf-8', newline='')