当前位置:   article > 正文

Python——Excel读写操作(1)_jupyter读取excel文件

jupyter读取excel文件

目录

一、操作前的准备

查看模块:(所有的命令在Jupyter Notebook中完成)

安装模块:

二、Excel文件的读取

(1)导入xlrd模块

(2)打开工作簿Book

(3)指定工作簿中的表单Sheet

(4)根据行序列号读取内容

(5)输出遍历

举一反三:

三、Excel文件的写入操作

(1)导入模块:

(2)读取文件内容:

(3)写入文件内容:

(4)调用函数:

(5)输出遍历表单:

举一反三

2、常见错误


一、操作前的准备

1、在Excel的读写操作中,需要用到xlrd(读取Excel文件)和xlwt(向Excel文件写入内容)这两个第三方库。在输入命令前需要先查看电脑环境中有没有这两个模块。

电脑没有该模块则会报错,例如:

查看模块:(所有的命令在Jupyter Notebook中完成)

pip show xlwt

pip show xlrd

如果电脑中已安装xlwt和xlrd,则运行出:

如果没有安装则:

安装模块:

pip install xlwt

pip install xlrd

安装成功:

PS:Anaconda集成开发环境中自带xlrd和xlwt,如果没有则在Anaconda的命令窗口安装。

在Anaconda Prompt先查看再安装:

二、Excel文件的读取

1、读取作步骤:
    (1)导入模块xlrd
    (2)打开工作簿Book
    (3)指定工作簿中的表单Sheet
    (4)根据行序列号读取内容

示例1:读取Stu_pack中的Excel文件内容school.xls,将结果保存到列表中

(1)导入xlrd模块

(2)打开工作簿Book

xlrd.open_workbook(文件名):打开Excel文件

PS:相对地址:../(文件的上一个文件夹名)/文件名.文件类型,一定是英文书写否则报错。

(3)指定工作簿中的表单Sheet

sheet_by_index(索引):根据索引获取表单

PS:索引从“0”开始,“0”为第一个表单,”1“为第二个表单

(4)根据行序列号读取内容

nrows:表单的行数(Sheet类)

ncols:表单的列数

cell_value(行序,列序):获取单元格的内容(Sheet类)

append( ):在末尾追加元素

(5)输出遍历

遍历结果:(结果太多,展示一部分)

举一反三:

输出前十行的学校

1.第一种方法(在输出遍历中,筛选前10行)

i=1指的是表单第一行

程序运行结果:

2、第二种方法(在模块中筛选)

这里for row in range(1,11)指从表单第二行开始,到表单第十一行结束。

程序输出结果:

三、Excel文件的写入操作

1、写入步骤:

(1)导入模块: xlwt

(2)构造工作簿: Workbook
(3)为工作簿添加表单: Worksheet
(4)根据行列序号写入内容
(5)保存文件

示例2:将示例1读取的Excel文件内容,写入到另一个Excel中,并保存到R&Q_pic 文件夹中。

筛选出所在省份为上海市的学校

(1)导入模块:

(2)读取文件内容:

(读取部分与上面相同)

return schools: 提供返回值

PS:def 函数名 ·······return :定义一个在模块应用后面的函数

(3)写入文件内容:

在R&Q_pic中创建一个文件

(文件内容,仅展示一部分)

xlwt.Workbook:创建Excel文件(这里Work要大写,否则报错)

add_sheet(名称):添加表单

write(行序,列序,内容,样式):向单元格添加内容

write_merge(行序1.行序2,列序1,列序2,内容,样式):合并指定范围单元格,并指定内容

save(相对路径):在新的文件夹中创建文件

PS:这里的行序和列序都是从0开始计算

(4)调用函数:

(5)输出遍历表单:

程序运行结果:(输出结果过多,不全部展示)

举一反三

输出前十所学校

输出结果:

2、常见错误

(1)、在文件读取中,open_workbook的word是小写

在文件写入操作中,Workbook要首字母大写

(2)、row_num与for对齐

在7列全部打印后,换一行打印

每打印一列就换一行

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号