一、Excel文件的读取与写入 1、读取操作步骤: (1)导入模块xlrd (2)打开工作簿Book (3)指定工作薄中的表单Sheet (4)根据行列序号读取内容
实例一:
#实例一:读取Stu_pack中的Excel文件内容school.xls,将结果保存在以列表中 #(1)导入模块xlrd import xlrd
(2)打开工作簿Book
wb = xlrd.open_workbook('../Stu_pack/school.xls')
(3)指定工作薄中的表单Sheet
sheet=wb.sheet_by_index(0)
(4)根据行列序号读取内容
schools=[] #定义一个二维列表schools for row in range(sheet.nrows): school =[] #定义一个一维列表school for col in range(sheet.ncols): content = sheet.cell_value(row,col) school.append(content) schools.append(school) #只读取前十的信息: i=0 for school in schools: if i<12: print(school) i =i+1
输出:
['招生单位代码', '招生单位名称', '所在省份', '是否985', '是否211', '是否自主划线', '学校类型'] ['10001', '北京大学', '北京市', '是', '是', '是', '综合类'] ['10002', '中国人民大学', '北京市', '是', '是', '是', '综合类'] ['10003', '清华大学', '北京市', '是', '是', '是', '理工类'] ['10004', '北京交通大学', '北京市', '否', '是', '否', '理工类'] ['10005', '北京工业大学', '北京市', '否', '是', '否', '理工类'] ['10006', '北京航空航天大学', '北京市', '是', '是', '是', '理工类'] ['10007', '北京理工大学', '北京市', '是', '是', '是', '理工类'] ['10008', '北京科技大学', '北京市', '否', '是', '否', '理工类'] ['10009', '北方工业大学', '北京市', '否', '否', '否', '理工类'] ['10010', '北京化工大学', '北京市', '否', '是', '否', '理工类'] ['10011', '北京工商大学', '北京市', '否', '否', '否', ''] 2、Excel文件的写入操作步骤: (1)导入模块:xlwt (2)构造工作薄:Workbook (3)为工作薄添加工作表:Worksheet (4)根据行列序号写入内容 (5)保存文件
示例二:将示例一读取的excel文件内容,写入到另一个Excel中并保存到R&Q_pic文件夹中,对学校所在省份进行简单判断。第一行合并单元格显示标题 #(1)导入模块:xlwt import xlwt import xlrd
#(2)读取文件内容 def read_excel(file_name): wb = xlrd.open_workbook(file_name) sheet=wb.sheet_by_index(0) schools=[] #定义一个二维列表schools for row in range(sheet.nrows): school =[] #定义一个一维列表school for col in range(sheet.ncols): content = sheet.cell_value(row,col) school.append(content) schools.append(school) return schools
#(3)写入文件内容 def write_excel(school): #构造工作薄:Workbook并创建对象wb wb = xlwt.Workbook(encoding ='utf-8') #为工作薄添加工作表:Worksheet sheet=wb.add_sheet('上海市高校信息表')
#根据行列序号写入内容
sheet.write_merge(0,0,0,6,'上海市高校信息表')#合并单元格写入表头
for col in range(7): #遍历写入工作表的列表名称(列表字段)
sheet.write(1,col,schools[0][col])
row_num =2
for school in schools:
if school[2]=='上海市':
for col in range(7):
sheet.write(row_num,col,school[col])
row_num =row_num+1 #进行自加1 跳出内循环再加一
wb.save('../R&Q_pic/上海市高校信息表.xls')
#调用函数 school_list= read_excel('../Stu_pack/school.xls') write_excel(schools) schools=read_excel('../R&Q_pic/上海市高校信息表.xls') for school in schools: print(school) 输出:
['上海市高校信息表', '', '', '', '', '', ''] ['招生单位代码', '招生单位名称', '所在省份', '是否985', '是否211', '是否自主划线', '学校类型'] ['10246', '复旦大学', '上海市', '是', '是', '是', '综合类'] ['10247', '同济大学', '上海市', '是', '是', '是', '理工类'] ['10248', '上海交通大学', '上海市', '是', '是', '是', '综合类'] ['10251', '华东理工大学', '上海市', '否', '是', '否', '理工类'] ['10252', '上海理工大学', '上海市', '否', '否', '否', '理工类'] ['10254', '上海海事大学', '上海市', '否', '否', '否', '理工类'] ['10255', '东华大学', '上海市', '否', '是', '否', '理工类'] ['10256', '上海电力学院', '上海市', '否', '否', '否', '理工类'] ['10259', '上海应用技术大学', '上海市', '否', '否', '否', '理工类'] ['10264', '上海海洋大学', '上海市', '否', '否', '否', '农林类'] ['10268', '上海中医药大学', '上海市', '否', '否', '否', '医药类'] ['10269', '华东师范大学', '上海市', '是', '是', '否', '师范类'] ['10270', '上海师范大学', '上海市', '否', '否', '否', '师范类'] ['10271', '上海外国语大学', '上海市', '否', '是', '否', '语言类'] ['10272', '上海财经大学', '上海市', '否', '是', '否', '财经类'] ['10273', '上海对外经贸大学', '上海市', '否', '否', '否', ''] ['10274', '上海海关学院', '上海市', '否', '否', '否', ''] ['10276', '华东政法大学', '上海市', '否', '否', '否', '政法类'] ['10277', '上海体育学院', '上海市', '否', '否', '否', '体育类'] ['10278', '上海音乐学院', '上海市', '否', '否', '否', '艺术类'] ['10279', '上海戏剧学院', '上海市', '否', '否', '否', '艺术类'] ['10280', '上海大学', '上海市', '否', '是', '否', ''] ['10856', '上海工程技术大学', '上海市', '否', '否', '否', '理工类'] ['11047', '上海立信会计金融学院', '上海市', '否', '否', '否', ''] ['11458', '上海电机学院', '上海市', '否', '否', '否', ''] ['11835', '上海政法学院', '上海市', '否', '否', '否', ''] ['12044', '上海第二工业大学', '上海市', '否', '否', '否', ''] ['80402', '上海国家会计学院', '上海市', '否', '否', '否', ''] ['82707', '上海材料研究所', '上海市', '否', '否', '否', ''] ['82717', '上海发电设备成套设计研究院', '上海市', '否', '否', '否', '理工类'] ['82718', '上海内燃机研究所', '上海市', '否', '否', '否', ''] ['82805', '上海核工程研究设计院', '上海市', '否', '否', '否', ''] ['82937', '中国航空研究院640所', '上海市', '否', '否', '否', ''] ['83009', '华东计算技术研究所', '上海市', '否', '否', '否', ''] ['83285', '上海航天技术研究院(航天八院)', '上海市', '否', '否', '否', ''] ['83502', '上海化工研究院', '上海市', '否', '否', '否', ''] ['83901', '上海船舶运输科学研究所', '上海市', '否', '否', '否', ''] ['84002', '电信科学技术第一研究所(上海)', '上海市', '否', '否', '否', ''] ['84505', '上海生物制品研究所', '上海市', '否', '否', '否', ''] ['85901', '中国医药工业研究总院', '上海市', '否', '否', '否', '医药类'] ['86206', '中国船舶及海洋工程设计研究院', '上海市', '否', '否', '否', ''] ['86207', '上海船舶设备研究所', '上海市', '否', '否', '否', ''] ['86208', '上海船用柴油机研究所', '上海市', '否', '否', '否', ''] ['86219', '上海船舶电子设备研究所', '上海市', '否', '否', '否', ''] ['87901', '上海市计算技术研究所', '上海市', '否', '否', '否', ''] ['87902', '上海国际问题研究院', '上海市', '否', '否', '否', ''] ['87903', '上海社会科学院', '上海市', '否', '否', '否', ''] ['89631', '中共上海市委党校', '上海市', '否', '否', '否', ''] ['90030', '第二军医大学', '上海市', '否', '是', '否', '']
只输出前十行:
schools=read_excel('../R&Q_pic/上海市高校信息表.xls') i=0 for school in schools: if i<12: print(school) i =i+1 输出:
['上海市高校信息表', '', '', '', '', '', ''] ['招生单位代码', '招生单位名称', '所在省份', '是否985', '是否211', '是否自主划线', '学校类型'] ['10246', '复旦大学', '上海市', '是', '是', '是', '综合类'] ['10247', '同济大学', '上海市', '是', '是', '是', '理工类'] ['10248', '上海交通大学', '上海市', '是', '是', '是', '综合类'] ['10251', '华东理工大学', '上海市', '否', '是', '否', '理工类'] ['10252', '上海理工大学', '上海市', '否', '否', '否', '理工类'] ['10254', '上海海事大学', '上海市', '否', '否', '否', '理工类'] ['10255', '东华大学', '上海市', '否', '是', '否', '理工类'] ['10256', '上海电力学院', '上海市', '否', '否', '否', '理工类'] ['10259', '上海应用技术大学', '上海市', '否', '否', '否', '理工类'] ['10264', '上海海洋大学', '上海市', '否', '否', '否', '农林类']
♡
3807

被折叠的 条评论
为什么被折叠?



