- 在线时间
- 1630 小时
- 最后登录
- 2024-1-29
- 注册时间
- 2017-5-16
- 听众数
- 82
- 收听数
- 1
- 能力
- 120 分
- 体力
- 566419 点
- 威望
- 12 点
- 阅读权限
- 255
- 积分
- 175149
- 相册
- 1
- 日志
- 0
- 记录
- 0
- 帖子
- 5313
- 主题
- 5273
- 精华
- 3
- 分享
- 0
- 好友
- 163
TA的每日心情 | 开心 2021-8-11 17:59 |
|---|
签到天数: 17 天 [LV.4]偶尔看看III 网络挑战赛参赛者 网络挑战赛参赛者 - 自我介绍
- 本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。
 群组: 2018美赛大象算法课程 群组: 2018美赛护航培训课程 群组: 2019年 数学中国站长建 群组: 2019年数据分析师课程 群组: 2018年大象老师国赛优 |
; ^" X) U8 T, y如何用Python提高办公(Excel)效率?
. l4 {# i. v2 x' e8 J这几天在家里利用网络视频教程学习了一下简单的Python爬虫,然后需要把爬取的数据保存到Excel表,就接触了一下 xlwt 这个Python库,不用不知道,一用吓一跳,当我写一个99乘法表,连带我导包只需要 7 行代码的时候,我才想起来,为啥那么多文员的招聘上写着 “会Python的优先” 了 ,想想语言里面的那些语法,再想想配合起来用,几万行数据也不过几行代码即可实现,那效率简直是快到令人难以呼吸啊!
# `) W: p6 p) }5 _+ |文章目录
7 k. u; b! _, g# ~, N# ~
8 M2 ?6 w3 B" ^0 s' L1 o6 U" A准备xlwt库
9 {1 F5 w: I6 ` m# D0 r安装xlwt包# F) e7 L' \5 I4 M& [2 l: L- {, s
Python文件中导入包
# C3 j: _6 f8 t$ l& X) @- ?; M- wxlwt使用3 ~& q' f$ J9 _
创建WorkBook对象
# S, T- C4 s$ U- Q$ W* {创建Sheet0 i1 F' [, D0 s4 P8 G$ h0 o# p6 f5 N
添加数据: @( f8 q9 O( S3 H. v2 o
保存文件3 y7 {4 J) C' v: ?# N5 @
拓展6 a' s# p/ L* X$ V5 Q" y5 G
批量插入! T$ n) n; w, ~( W# H
报错注意
B2 B. i. X$ F: W准备xlwt库
- p$ g( i1 [% t" O& p; k+ [" ^
0 ^: h$ S& A: b/ _# G8 TPython里面经过多年沉淀下来的库也是数不胜数,并且很多库的功能都非常强大,我都觉得以后哪怕是一个简单的文员都需要掌握Python了,虽然现在还不算是硬性要求,但是这种趋势已经在社会上形成了,毕竟互联网时代是个快节奏时代,能有高效率的办公谁还喜欢低效率呢?
# I s0 ?* j' C4 C+ }1 b) A2 Y" x, d' ~8 z
安装xlwt包1 h7 e( z7 ]) Y. v d4 y
b8 J* b# ^& wFile ->> Setting ->> Project:Name ->> Project Interpreter ->> 右边 + 号 ->> 搜索xlwt ->> 选中xlwt ->> 左下角 Install Package ->> 等待安装完成
) s- Q* i, k& ^7 [9 I' e8 A
! c5 S5 p9 F$ g% S* H' w' j$ X- O
9 ]. ?4 J6 O( Q" W* a$ n
, S6 P( S4 M* F! E: a% I$ g7 k. I2 ]2 q" d3 P6 @
Python文件中导入包7 K9 D6 I2 h" u v' j
; C8 D0 Q0 R& t; c+ Y& @) H# [2 Kimport xlwt # 导入 xlwt 包& S! |, Q( N6 r0 h8 {& F
1$ Y O: B6 x1 g/ C. Z. v" \2 {# K
xlwt使用7 o1 }( K0 n9 P+ p; |
( \" {) n# I1 a+ }- X4 ^# W) hxlwt库的使用也非常简单,简单的写入数据可以按照如下四步(一步一行代码)走:' G: }8 r, X; { _1 `6 ]& r0 l: v- b
# q0 S4 ~" I( f' s/ B3 l8 `" o6 b创建WorkBook对象5 \2 N: K* R. N5 m, Y" Y
0 o+ J# w/ v2 G8 x6 Q5 N4 Y' g
创建WorkBook对象就约等于创建了一个Excel文件了,创建对象的时候只需要设置一下编码格式就行了,默认是ASCII,所以我们一般都需要设置一下 “UTF-8”
; d" K# T2 ^. L! `" p# U' x) n7 C8 j, k
workBook = xlwt.Workbook(encoding="utf-8") # 创建workBook对象
: j9 |$ [+ a1 X I7 W/ ]11 {7 l) I! \; K3 x- h4 _" Q
还有一个不常用的属性:压缩等级,直接不写就是默认 04 t" Z0 |7 y6 A: S1 f1 @0 J( C& Y
1 n: L$ ~" _; |" f% A Z3 [' W, y s, Z @
# style_compression 是表示设置压缩的等级/ c+ f9 S# W4 T! Y3 F+ [
workBook = xlwt.Workbook(encoding="utf-8",style_compression=0)
" F0 M O+ E! S# r1
+ |2 ]6 h% N" h3 v& X, N: L2
% g4 k$ x( D$ @. t创建Sheet4 P* d8 o6 K: S. V0 U9 {* c* O
T# z: P e5 I用过Excel的人应该都知道,一个xls(或xlsx)文件是可以有多个表的,当然可能我们很多时候习惯每个文件只有一个表有数据。这里只需调用WorkBook的 .add_sheet() 方法,设置一下表名,即可创建一个表,当然我们默认是设置一下覆盖属性:cell_overwrite_ok=True 表示可以覆盖原有数据进行写入操作, \; T% H+ p) W
( a7 C) w# u( d {2 @( F1 ]
workSheet = workBook.add_sheet("sheet1",cell_overwrite_ok=True)0 _4 x7 Y3 i! N* V
1
9 B; z& G- K* y添加数据
7 {, P8 x( e2 Y8 X$ o! t, B7 _& ^% f3 B# X
文件有了,表有了,自然就剩下添加数据了,不然咱建个空文件、空表干啥呢?右键新建它不香嘛?写入数据的操作也是简单至极,调用workSheet的 .write() 方法,填入 行、列、数据 三个参数即可插入数据(作为一个程序猿,第一个数据当然要是神圣的:Hello World !)
1 B( B- y( I G1 ]; I: K
3 N2 u5 L& i9 f# x" [workSheet.write( 0, 0,"Hello Wolrd !")
; S, w, P1 r4 o7 E' X# \& t' R: z/ i1, h- a, S4 n R
保存文件! k3 \* N( T" [- n Z: i! \. U+ P
( P# W/ Y" p. W' t! W) S! P8 ~文件创建了,并不代表保存了,所以在写入完数据以后需要进行文件的保存(这里是保存在当前Python文件的同一个文件夹下)4 x9 F+ l1 b( D! K, O
/ n7 `3 S% ?& J- @4 {8 d& k
workBook.save("Hello World.xls")
9 v; A# t$ f: ~+ F' k" y0 A4 z1
' L* Y- T) d! ], @3 \4 p拓展
+ z! z2 c) c# C; M2 d# v- q
3 K) b' }. a/ A9 s批量插入* L: `( r$ |& x6 d
7 }2 Z, o8 M# m/ F; l/ M/ H
利用语法批量插入数据,可能很多小伙伴都会了,但是我还是死皮赖脸说一说吧!
9 _& n' w4 g1 a- }( [$ ?" M3 h) t- B, m7 f% f9 d
比如这样,就是一个99乘法表的数据,逻辑是和学语言的时候打印99乘法表一样的,只不过这里把打印变成了写入Excel0 s" K! w. ?% D
( Y* a! i" C4 P5 }- r0 ?
for i in range(0, 9):* b# P' q$ C7 v3 i0 t& D" g
for j in range(0, i+1):5 f+ s+ ~4 T- {! R* d& q) p
workSheet99.write(i, j, "%d * %d = %d" % (i+1, j+1, ((i+1) * (j+1))))
/ f: `# p. f+ m9 |. \* t+ z8 e1
+ Z7 z N1 @' t; x% E4 s: u2
# w" @$ Y6 ~+ c3
$ r- ]3 ~: [) n0 b- l当然,还有很多很多操作,利用语法去实现,你会发现批量插入Excel数据如此简单,对于很多经常使用Excel批量插入或者处理数据人,感觉世界都轻松了起来!或许这就是程序改变世界吧!也验证了那句:人生苦短,我用Python!, i# j9 A& f" b0 E
) j. R8 [' v2 I" {. }+ w o, l报错注意
7 a6 B! H& `8 l# _$ M- \" S1 x0 M/ }
如果你在进行这一系列操作的时候,报错了,点击错误链接跳转的是保存文件那一行,并且是这样的错误,那么恭喜你,没关Excel(我经常这样),因为你打开了这个数据表,他就被WPS之类的软件占用了,程序就没法对其进行读写操作了,所以这点是需要注意的!1 k. g1 S [9 y" W( {: g
6 Q6 Z' V& Z2 W& |% e0 `7 @PermissionError: [Errno 13] Permission denied: 'xxxxx.xls'2 m9 F' v: @ W/ \. L( L6 M! O: ~
& I: w; O5 L1 l, \7 [( i
1 R$ Q/ q9 i4 ~* v P3 d
————————————————9 t; ]+ u. q/ g8 Z# r3 Q$ |
版权声明:本文为CSDN博主「Android_YU」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。, e5 x! L- n1 v( R/ L# f
原文链接:https://blog.csdn.net/qq_44720366/article/details/106152028- f5 r7 {- J# ~3 N* K8 Z5 ?, `' `7 \
! o$ g! w6 I3 v: O- @
, @; y: \& T" f5 o3 Q" Z, A6 q1 q
2 o' _ G5 g( N# @" ] |
zan
|