在工作中时常会遇到将部分数据导入到excel表格的情况,这时Python的好处可见一斑。Python操作数据表格大多使用openpyxl模块,下面介绍一下其基本使用。
零.首先
当然先先安装该模块了
1.pip install openpyxl
一.工作簿
0.创建工作簿
from openpyxl import Workbook
wb=Workbook()
1.保存工作簿
注意:若是已经存在同名文件则覆盖
wb.save("E:/save.xlsx")
2.文件加载
from openpyxl import load_workbook
wb2 = load_workbook('test.xlsx')
print(wb2.sheetnames)
3.文件存为流
您可以指定属性template = True,以将工作簿另存为模板:
或将此属性设置为False(默认)以另存为文档
二.工作表
0.创建工作表
有了工作簿后就可要创建工作表了工作簿默认至少有一张表我们可以这样获取
ws=wb.active
如果要创建表可以这样创建
ws1=wb.create_sheet("sheet01")#创建新表默认末尾
ws2=wb.create_sheet("sheet02",0)#创建新表位置是首位
保存一下工作簿
wb.save("E:/save.xlsx")
查看效果,sheet02排在首位,Sheet01排在末尾
1.拷贝(复制)工作表
注意点:仅能在单个工作簿中进行操作,不能跨工作簿操作
source=wb.active
target=wb.copy_worksheet(source)
2.修改工作表名
ws.title="modify name"
3.获取工作表对象
可以用工作表名和工作簿对象获取工作表对象
ws=wb["modify name"]
4.获取当前的工作表列表
print(wb.sheetnames)
5.样式
- 修改工作表标签颜色
ws.sheet_properties.tabColor="DC143C"
0.获取单元格并赋值
方式一
c=ws['A4']
ws["A4"]=5
方式二
c=ws.cell(row=4,column=1)
c.value=5
#or
ws.cell(row=4,column=1,value=5)
第二种可以直接遍历赋值
第二种可以直接遍历赋值
for c in range(1,21):
vc=chr(64 + c)
for r in range(1,21):
v=vc+str(r)
ws.cell(row=r,column=c,value=v)
1.访问多个单元格
切片访问
cell_range =ws['A1':'C2']
即如图所示区域
2.行或列的范围
3.合并/取消合并单元格
合并单元格:
ws.merge_cells('A1:G1')
拆分单元格:
ws.unmerge_cells('A1:G1')
4.增加/删除行/列
ws.insert_rows(7)#在原7行前插入一空白行
ws.delete_rows(7)#删除第7行
ws.delete_cols(1)#删除第1列
ws.insert_cols(1)#增加第1列
5.移动单元格
ws.move_range("C2:D10", rows=-1, cols=2)
#将选中的单元格向上移动一行再向右移动两列
如图所示
6.值
直接按行取值
for row in ws.values:
for value in row:
print(value)
没有限制直接打印全部
for row in ws.iter_rows(values_only=True):
print(row)
同理iter_cols()也是一样
时间格式
ws['A1']=datetime.datetime(2019,1,11)
ws.number_format
'yyyy-mm-dd hh:mm:ss'
使用公式
ws['A1']='=SUM(2,3)'
7.样式
默认样式
有两种类型的样式:单元样式和命名样式,也称为样式模板。
单元样式
from openpyxl.styles import Font
ft = Font(color="FF0000")
ws["A1"].font=ft
ws["C1"].font=Font(color="000080",italic=True)
样式复制
ft = Font(color="FF0000")ft1=copy(ft)
单元格填充
ws["A2"].fill=PatternFill("solid", fgColor="7F7F7F")
关于Python技术储备
学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!
一、Python所有方向的学习路线
Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
二、学习软件
工欲善其事必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。
三、入门学习视频
我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。
四、实战案例
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
五、面试资料
我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
这份完整版的Python全套学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费
】
Python资料、技术、课程、解答、咨询也可以直接点击下面名片,
添加官方客服斯琪
↓