高效办公 1.2 用Python新建Excel文件
1.2 用Python新建Excel文件
1.2.1 Excel的相关术语
workbook[ˈwəːkbʊk]:工作簿对象,工作簿文件。
worksheet[ˈwəːkʃiːt]:工作表。
cell[sel]:单元格。
1.2.2 openpyxl.Workbook( )新建工作薄
1.2.3 对象.save( )保存工作薄
任务1
在当前文件夹新建一个Excel 文件,命名为【学生花名册1.xlsx】并保存在当前目录。
# 导入库
import openpyxl# 用openpyxl 库 的Workbook 类来创建一个新的工作薄
# 新建得到的是一个工作薄对象
# 因此wb = 一个工作薄对象
# 新建时参数为空
# 新建成功后在不保存的情况下我们看不到工作薄对象
wb = openpyxl.Workbook( )# 查看wb 的类型
# wb = workbook = 一个工作薄对象
print(type(wb))# 用对象的save方法将工作薄保存在本地
# 并命名为【学生花名册1.xlsx】
# 对象.save(path)
# 学生花名册1.xlsx=./学生花名册1.xlsx
wb.save('学生花名册1.xlsx')
【终端输出】
<class 'openpyxl.workbook.workbook.Workbook'>
代码运行后,工作簿【学生花名册1.xlsx】新建成功,如下图所示:
【知识点汇总】
openpyxl 库 - Workbook 类:创建新的工作薄
openpyxl 库 - load_workbook函数:打开工作薄
工作簿对象 - save方法:保存工作薄
【代码解析】
1.先用import导入openpyxl库。
2.新建工作薄:wb = openpyxl.Workbook( )
用openpyxl库中的Workbook类新建一个工作薄对象赋值给变量wb。
wb 就表示刚才新建的工作薄对象。
上述代码对应的人工操作:
2.保存文件:wb.save('学生花名册1.xlsx')
将工作薄保存在本地,并命名为【学生花名册1.xlsx】
我觉得可以把sava理解成另存为这个动作:
【注意事项】
1、一定要有后缀名xlsx,否则电脑不知道你要新建的是什么类型的文件。
2、Workbook类 的首字母 W
必须是大写。
3、工作薄新建成功后,默认自动创建1个工作表【sheet】,如下图所示:
1.2.4 openpyxl.load_workbook 打开工作薄
【准备工作】
手动打开【学生花名册1.xlsx】,然后单元格【A1】中输入【姓名】,然后关闭文件。
# 导入库
import openpyxl# 用openpyxl库的load_workbook方法打开学生花名册1.xlsx文件。
# wb = 一个工作薄对象 =workbook
wb = openpyxl.load_workbook('学生花名册1.xlsx')# 查看wb 的类型
print(type(wb))# 对象.save(path)
wb.save('学生花名册1.xlsx')
wb.save('学生花名册2.xlsx')
【终端输出】
<class 'openpyxl.workbook.workbook.Workbook'>
上述代码运行后,左侧多了一个【学生花名册2.xlsx】文件,大家手动打开两个文件,发现【学生花名册2.xlsx】文件中的【A1】单元格里也有【姓名】两个字。
wb.save(‘学生花名册1.xlsx’)与打开的xlsx文件名相同,作用就是仅起到保存的作用。
wb.save(‘学生花名册2.xlsx’)与打开的xlsx文件名不相同,这里的作用就是另存为。
path相同=保存。
path不相同=另存为。
工作中,我们打开一个工作薄,电脑会呈现出一个具体的文件,但是Python不会有具体的显示,但是会创建一个workbook对象。
必须用Python打开工作薄,我们才有操作的对象,打开的作用在后面会体现出来。
人工手动和Python打开的都是一个实际存在的对象,只是一个呈现在电脑上,肉眼可见,一个肉眼不可见。
load [ləʊd]:原意是负荷、负载,这里有载入、读取文档的意思。
openpyxl 库 - load_workbook(path)函数:打开工作薄
openpyxl.load_workbook('学生花名册1.xlsx')
用openpyxl库的load_workbook方法打开学生花名册1.xlsx文件。
方法的参数为文件的路径。
【温馨提示】
使用save保存时,请先手动关闭Excel文件,不关闭会有运行错误提示。
若是重命名,则不会有错误提示。
save [seɪv]:原文积攒、储存,网络释义为保存。
path[pɑːθ]:路径。
练习1
1)在当前文件夹里新建一个【花名册】文件夹。
2)打开【学生花名册1.xlsx】文件。
3)将【学生花名册1.xlsx】存储到【花名册】文件夹中,并命名为【学生花名册3.xlsx’】。
# 导入库
import openpyxl
import os # mkdir:新建目录=新建文件夹
# ./花名册= 花名册 ( .可以省略不写)
os.mkdir('花名册')# 打开文件
wb = openpyxl.load_workbook('学生花名册1.xlsx')
wb.save('花名册/学生花名册3.xlsx')
练习2
1)在上一级文件夹里新建一个【roster】文件夹。
2)打开【学生花名册1.xlsx】文件。
3)将【学生花名册1.xlsx】存储到【roster】文件夹中,并命名为【roster3.xlsx’】。
# 导入库
import openpyxl
import os # mkdir:新建目录=新建文件夹
# .. 表示上一级
os.mkdir('../roster')# 打开文件
wb = openpyxl.load_workbook('学生花名册1.xlsx')
wb.save('../roster/roster3.xlsx')
roster[ˈrɒstə]:花名册。
大家运行后注意观察新建文件夹的位置,进一步了解相对路径.
和..
,即同级和上一级目录的区别。
1.2.5 批量新建工作薄
任务2
在【花名册】文件夹中新建4个工作薄,分别命名为【1年级名册.xlsx】【2年级名册.xlsx】【3年级名册.xlsx】【4年级名册.xlsx】。
import openpyxl# for循环搭配range函数控制循环次数
# 通过循环来重复新建工作薄这个动作
for i in range(1,5) :# 用openpyxl 库 的Workbook 类来创建一个新的工作薄 wb = openpyxl.Workbook()# 对象.save(path)保存文件wb.save('花名册/{}年级花名册.xlsx'.format(i))
【第二种写法】
import openpyxl# for循环搭配range函数控制循环次数
# 通过循环来重复新建工作薄这个动作
for i in range(5,9) :# 用openpyxl 库 的Workbook 类来创建一个新的工作薄 wb = openpyxl.Workbook()# 对象.save(path)保存文件wb.save('花名册/%d年级花名册.xlsx'%i)
代码运行成功后,文件新建成功,如下图所示:
wb.save(‘花名册/{}年级花名册.xlsx’.format(i))
wb.save(‘花名册/%d年级花名册.xlsx’%i)
上述两句代码实现的功能是一样的,两个都是实现字符串格式化。
format相关知识参考笔记【4.14 字符串的拼接即格式化.format】
%d 的格式化知识后期会写。
【温馨提示】
某个动作是重复的,例如新建4个工作薄这个动作就是重复的,这时候我们就可以考虑用for+range 来实现。
概括为:重复的动作用for+range
。
例如:在爬虫中我们也是用 for+range
来控制访问的网页数。
【知识回顾:range函数】
range( )函数的作用:生成一个整数序列(即列表)。
range(开始数字,结束数字,步长)
【温馨提示】
1.注意不要忘记for循环后的英文冒号:
。
2.参数含前不含后,意思是(1,3)含1不含3,所以输出1,2。
3.详细内容请参考【6.4 序列及range函数】。
【代码演示】
# 新建空列表用于存储for循环输出的元素i
list_0 = []
for i in range(3) :# append 为列表增加元素ilist_0.append(i)
print(list_0)list_1 = []
for i in range(1,3) :list_1.append(i)
print(list_1)
【终端输出】
[0, 1, 2]
[1, 2]
1.2.6 总结
高效办公 1.2 用Python新建Excel文件相关推荐
- python不能处理excel文件-python处理Excel文件
python处理excel文件主要是第三方模块库xlrd.xlwt.xluntils和pyExcelerator,除此之外,python处理excel还可以用win32com和openpyxl模块. ...
- python合并excel文件关键字_python合并多个excel文件的示例
工作中经常遇到要将十几个Excel(不管是xls.或者是CSV)合并到同一个文件中去,手工一个一个复制是不可能的,此时就轮到Python出马了 主要是利用for循环,读取每一个文件,作为df,然后再通 ...
- 详解Python操作Excel文件
前言 本篇文章主要总结了一下利用python操作Excel文件的第三方库和方法. 常见库简介 1.xlrd xlrd是一个从Excel文件读取数据和格式化信息的库,支持.xls以及.xlsx文件. 地 ...
- 使用Python获取Excel文件中单元格公式的计算结果
假设有如下Excel文件,其中第二个WorkSheet中数据如下: 其中D列为公式,现在要求输出该列公式计算的数值结果,代码如下: 代码运行结果: ----------相关阅读---------- 1 ...
- python读取文件_一日一技:使用Python读取Excel文件
安装xlrd模块: pip install xlrd 使用xlrd模块,可以从电子表格中检索信息. 例如,可以在Python中完成读取,写入或修改数据的操作. 另外,用户可能必须浏览各种工作表并根据某 ...
- python可以读取excel文档吗_python打开excel文件【python读取excel文件如何进行】
Python语言打开Excel文件? 一.安装xlrd模 到python官网下http://pypi.python.org/pypi/xlrd模块安装,前已经安装python 环境. 二.使用介 1. ...
- 利用python对excel文件进行操作_数据处理-对Excel文件读取和操作和存储(python版)...
一:利用python读取Excel中.xls文件中所有数据 #encoding=utf-8 import xlrd import xlwt from xlwt import * fileName=&q ...
- python 利用python处理excel文件
python 利用python处理excel文件 1.相关包的安装 2.读取.创建excel文件,遍历内容 3.字体样式调整 4.填充样式调整 5.边框样式调整 6.对齐样式调整 7.excel内添加 ...
- python更新excel内容_[原创]使用 Python 读写 Excel 文件(一)更新
项目要求 如果说是 Office 办公软件使得 Windows 成为主流的操作系统,那么 Excel 就是使得微软硬起来的法宝! Word 和 PowerPoint 都有不相上下的对手,但 Excel ...
最新文章
- python网页服务器_python编写简单网页服务器
- 用Kubernetes搭建Etcd集群和WebUI
- 贴一下目前的工作任务列表
- 怎么输入license_误执行了 rm fr /* 之后,除了跑路还能怎么办?!
- 一则故事表达:并发,并行,同步,异步,线程,多线程
- Linux 内核 cgroups 新漏洞可导致攻击者逃逸容器
- C++之lock_guard和unique_lock自动加解锁区别
- 【python之路11】集合数据类型(set)
- php 怎么判断月份最后一天_PHP基础案例三:判断学生星座
- CSS实现字体镂空效果、阴影效果、字体阴影效果
- 大学c语言题库 答案,天津城建大学C语言题库附答案.doc
- 华为确认53岁高管丁耘骤逝:执掌最大营收业务,东南大学毕业,在职已超26年...
- dataFrame(DF)将数据插入ES时报错 org.elasticsearch.hadoop.EsHadoopIllegalArgumentException: Cannot detect E
- 从源码层面理解 Either、Option 和 Try
- Photoshop抠图(色彩范围命令扣人物/动物毛发图)
- 如何删除tmp计算机桌面,win10系统下tmp临时文件删除不了如何解决
- python玩转我的世界_PYTHON玩转我的世界——批量生成铁傀儡
- pdf转换成jpg python_【PDF转图片】如何将PDF转换成图片格式--Python
- MySQL 8 的学习——4从表中检索信息
- java计算机毕业设计歌唱比赛积分管理系统源码+mysql数据库+系统+lw文档+部署
热门文章
- 有没有好用的文字转语音软件?
- opencv4.1无法加载python-cnn模型,编译第三方库libtensorflow_cc.so巨坑
- 基于vivado实现FFT/IFFT
- 2022年G2电站锅炉司炉操作证考试题库及答案
- FME进阶视频教程: FME使用技巧之高级扇出,讲解在FME中输出数据的高级方式,满足数据个性化分类输出的需求
- C语言:L1-070 吃火锅 (15 分)
- PDF如何旋转其中一页?
- 哥德尔:伟大的数学家与饱受精神疾病折磨的患者
- full outer join应用场景
- 基于若依框架(前后端分离)-新写前端Vue页面