excel 文件操作
import openpyxl wb = openpyxl.load_workbook('files/text1.xls') # 获取工作表名 names = wb.sheetnames # 获取活跃表 sheet1 = wb.active # 根据表名获取指定表 sheet2 = wb['Sheet1'] # 获取表名 sheet1.title # 获取最大行数 sheet1.max_row # 获取最大列数 sheet1.max_column # 获取指定单元格 cell1 = sheet1['A2'] # 获取单元格的内容 cell2.value # 获取整个表中的单元格内容 for r in range(1, sheet1.max_row+1): for c in range(1, sheet1.max_column+1): print(sheet1.cell(r,c).value, end=' ') print()
csv 读写操作
import csv # 1. 创建reader对象 # 1) # csv.reader(文件路径) - 读数据的时候每一行内容对应一个列表(返回值是包含文件每行内容的迭代器) # csv.DictReader(文件路径) - 读数据的时候每一行内容对应一个字典 f = open('files/2018年北京积分落户数据.csv', encoding='utf-8', newline='') # reader = csv.reader(f) reader = csv.DictReader(f) # 2) 通过reader读数据 print(next(reader)) print(next(reader)) # 2. 创建文件对应的writer对象 # csv.writer(文件对象) f = open('files/text1.csv', 'w', encoding='utf-8') writer = csv.writer(f) # 写数据:writer.writerow(列表) 一次写一行 writer.writerow(['name', 'age', 'score', 'gender']) writer.writerows([ ['小明', 18, 100, '男'], ['小花', 22, 88, '女'], ['小王', 33, 22, '男'] ]) # 2) csv.DictWriter(文件对象) f = open('files/text1.csv', 'w', encoding='utf-8') writer = csv.DictWriter(f, ['name', 'age', 'score', 'gender']) # 写数据 writer.writeheader() # 将原来设定好的字典的键作为第一行内容写入文件 writer.writerow({'name': '小明', 'age': 18, 'score': 100, 'gender': '男'})