初学者第10课:Excel文件的读取与写入(Ⅱ)实例

 #示例2:将示例1读取的 Excel 文件内容,写入到另一个Excel中,对学校所在省份进行简单判断。第一行合并单元格显示标题。

前期准备

(1)导入模块:xlwt

import xlrd
import xlwt

(2)读取文件内容 

def read_excel(file_name):                  #定义读取文件函数
    wb = xlrd.open_workbook(file_name)      #创建读取文件的对象wb  
    sheet = wb.sheet_by_index(0)
    schools = []
    for row in range(sheet.nrows):
        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(schools):                   
#定义写入文件函数
                                                                                
#(2)构造工作簿:Workbook
    wb = xlwt.Workbook(encoding = 'utf-8')  
#创建写入文件的对象wb
                                                                                
#(3)为工作簿添加表单:Worksheet
    s = wb.add_sheet('上海市高校信息表')    #创建一个表单
                                                                                
#(4)根据行列序号写入内容
    #添加文本的样式(字体和对齐)
    font = xlwt.Font()          #字体
    font.bold = True
    font.height = 400
    font.underline = True
    font.colour_index = 6                            
#0:黑,1:白,2:红,3:绿,4:蓝,5:黄,6:紫
    align = xlwt.Alignment()    #对齐
    align.horz = 2    
#水平居中 1:左,2:中,3:右
    align.vert = 1    
#垂直居中 0:上,1:中,2:下
    style = xlwt.XFStyle()      #样式
    style.font = font
    style.alignment = align
    
    s.write_merge(0,0,0,6,'上海市高校信息表',style)    
#写表标题并合并单元格(A1:A7)
    for col in range(7):                        
#写表列表名称
        s.write(1,col,schools[0][col])      
#第2行第1列开始写内容school[0][col]
    row_num = 2                             
#从第3行开始写数据
    for school in schools:                  
#一行一行写数据内容
        if school[2] == '上海市':
            for col in range(7):
                s.write(row_num,col,school[col])
            row_num = row_num + 1
                                                                                
#(5)保存文件内容
    wb.save('../R&Q_pic/上海市高校信息表.xls')

school_list = read_excel('../Stu_pack/wordcloud/school.xls') 
#调用读取函数,将素材里的文件school.xls作为实参传递给形参
write_excel(school_list)  
#调用写入函数,将读取的数据作为实参传递给形参写入到文件"上海市高校信息表.xls"里保存

schools_list = read_excel('../R&Q_pic/上海市高校信息表.xls')
i=1
for school in schools_list:
    if i<13:
        print(school)
        i+=1

结果如下: 

检测是否存在相应库  无则需下载
pip show xlwt  检测xlwt是否存在
pip install xlwt 安装xlwt

 一、用pandas读写Excel文件

1、导入第三方库pandas

import pandas as pd #导入第三方库pandas

2、将目标Excel文件读取内容赋值给date

date = pd.read_excel('../Stu_pack/wordcloud/school.xls')

 3、检测内容完整

date

 内容如图:

拓展——

date.head(11)   #读取文件前11项(默认为5项)

date.tail(11) #读取文件后11项(默认为5项) 

#请读取所在省份为上海市的数据
date=date[date['所在省份']=='上海市']
#请将下面的数据写入到‘R&Q_pic’文件夹,文件名为‘上海市高校信息.xls’
date.to_excel('../R&Q_pic/上海市高校信息.xls')

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值