- 在线时间
- 1630 小时
- 最后登录
- 2024-1-29
- 注册时间
- 2017-5-16
- 听众数
- 82
- 收听数
- 1
- 能力
- 120 分
- 体力
- 564539 点
- 威望
- 12 点
- 阅读权限
- 255
- 积分
- 174585
- 相册
- 1
- 日志
- 0
- 记录
- 0
- 帖子
- 5313
- 主题
- 5273
- 精华
- 3
- 分享
- 0
- 好友
- 163
TA的每日心情 | 开心 2021-8-11 17:59 |
|---|
签到天数: 17 天 [LV.4]偶尔看看III 网络挑战赛参赛者 网络挑战赛参赛者 - 自我介绍
- 本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。
 群组: 2018美赛大象算法课程 群组: 2018美赛护航培训课程 群组: 2019年 数学中国站长建 群组: 2019年数据分析师课程 群组: 2018年大象老师国赛优 |
9 H! z3 C) z5 a: G) O9 b如何用Python提高办公(Excel)效率?
8 J) ^/ o$ v1 r9 t! D这几天在家里利用网络视频教程学习了一下简单的Python爬虫,然后需要把爬取的数据保存到Excel表,就接触了一下 xlwt 这个Python库,不用不知道,一用吓一跳,当我写一个99乘法表,连带我导包只需要 7 行代码的时候,我才想起来,为啥那么多文员的招聘上写着 “会Python的优先” 了 ,想想语言里面的那些语法,再想想配合起来用,几万行数据也不过几行代码即可实现,那效率简直是快到令人难以呼吸啊!
3 T2 D) [# i$ F+ E9 j# _文章目录
- W; i. V3 ~& j E8 R2 D, V/ Q9 p9 V2 ~2 d4 R% C
准备xlwt库
! F8 S! ]4 F9 H/ X% `3 t2 F0 o安装xlwt包, n- Q* E8 ^! x% @# h8 B
Python文件中导入包
, d4 g1 y6 ^) o; t2 _xlwt使用
. M! e4 [5 j J9 i+ g创建WorkBook对象
1 ^: S, W5 } _$ b8 m创建Sheet% d: e: |- Q( E2 S3 X3 e
添加数据; t9 v- F" h9 g: Y! H
保存文件
2 J3 a' m0 T. n. @$ i- Y/ b3 |) I拓展
( d! T0 k4 _6 m# \$ n* {, ?批量插入! n* X8 e8 _/ f
报错注意) R( K. M7 h1 P8 O. E! @% G
准备xlwt库! X5 J6 S6 j7 d2 D) B! `2 ]/ J
7 j/ B2 f$ H3 z% L& N% G' N
Python里面经过多年沉淀下来的库也是数不胜数,并且很多库的功能都非常强大,我都觉得以后哪怕是一个简单的文员都需要掌握Python了,虽然现在还不算是硬性要求,但是这种趋势已经在社会上形成了,毕竟互联网时代是个快节奏时代,能有高效率的办公谁还喜欢低效率呢?
% L. m$ R' `; B6 N9 c" X; d
: s: \5 i# f8 @; i0 \5 ]安装xlwt包
" x- H2 [6 C& u6 Z* N6 k5 I+ x0 ]9 @' n
File ->> Setting ->> Project:Name ->> Project Interpreter ->> 右边 + 号 ->> 搜索xlwt ->> 选中xlwt ->> 左下角 Install Package ->> 等待安装完成
, b% U) G9 E E+ ?% q$ T/ q# G+ V% ?0 b) p2 C
% N- w) x8 a7 O
2 [+ Y0 G1 M+ g
$ T" U3 z* S8 \& N
Python文件中导入包& o5 }$ J6 Q" V* G7 Y1 S' {: a+ C, Q6 t( S
6 H2 j6 s% q% ~5 o
import xlwt # 导入 xlwt 包; x% g9 ^( L; R( J2 l: H9 c- U
18 _) l) g" D/ v. e$ n6 d( |
xlwt使用3 _' Z* |: f0 T( ~0 m8 Z
5 y; {' ^# Y1 |
xlwt库的使用也非常简单,简单的写入数据可以按照如下四步(一步一行代码)走:( {% ^6 x, c; m8 T. |
" F. b3 l; u( K创建WorkBook对象
# o6 e1 j! @( C/ ?9 e. @4 n/ D- R8 m' d
" \6 D7 y7 A( E3 K. a6 C, p- q' F7 f创建WorkBook对象就约等于创建了一个Excel文件了,创建对象的时候只需要设置一下编码格式就行了,默认是ASCII,所以我们一般都需要设置一下 “UTF-8”
! `$ V( H, P0 E1 y8 `- j$ e) `" u( G6 M( `7 }" N8 [+ [# U: [
workBook = xlwt.Workbook(encoding="utf-8") # 创建workBook对象
$ j% c. i4 x# R! u" U1$ L+ ^: ?" I6 x# u: V3 I: X' m* k
还有一个不常用的属性:压缩等级,直接不写就是默认 0
( @7 B! M0 N# p
8 G: O) A* D) o4 P: |! X5 k# style_compression 是表示设置压缩的等级+ \9 N2 Z4 M+ e# p6 I5 r
workBook = xlwt.Workbook(encoding="utf-8",style_compression=0)
" |* F2 }! q' c: ?1
9 G" B* [, X& U( Q, m2" q# a# k' r) b% N; L4 k% O# I4 }
创建Sheet
8 \$ ]1 U+ g! ]7 y2 U9 ~8 j! _! [' |
用过Excel的人应该都知道,一个xls(或xlsx)文件是可以有多个表的,当然可能我们很多时候习惯每个文件只有一个表有数据。这里只需调用WorkBook的 .add_sheet() 方法,设置一下表名,即可创建一个表,当然我们默认是设置一下覆盖属性:cell_overwrite_ok=True 表示可以覆盖原有数据进行写入操作
* V; Z2 @* q- U# p5 ?( q8 Q) T5 W, S( \6 T& r& E& X) Y
workSheet = workBook.add_sheet("sheet1",cell_overwrite_ok=True)
/ T- W* L3 {5 }# s: \1 Q4 Z1
' N" l3 X: R: ?3 V添加数据
- ]3 r' l6 |4 \) Y) O& n- s2 }# p# O3 |
文件有了,表有了,自然就剩下添加数据了,不然咱建个空文件、空表干啥呢?右键新建它不香嘛?写入数据的操作也是简单至极,调用workSheet的 .write() 方法,填入 行、列、数据 三个参数即可插入数据(作为一个程序猿,第一个数据当然要是神圣的:Hello World !)
' ~, X0 e3 V" c+ c$ F
" S% B0 T/ j& P; b& W! y& Z! TworkSheet.write( 0, 0,"Hello Wolrd !")" Z' y7 O+ z" Q+ z! b4 o9 Y
18 t5 j- Z; M" C8 J
保存文件6 n0 w7 T1 ]0 r- J+ X
) M. u" F- i \* v) k+ z8 q文件创建了,并不代表保存了,所以在写入完数据以后需要进行文件的保存(这里是保存在当前Python文件的同一个文件夹下)3 }0 ~. \. i" M2 ~4 y
; o7 \" J8 S2 q! ^' [4 N7 UworkBook.save("Hello World.xls")
% f& @8 X( b. a1
9 E- H( T/ n ^! I/ f2 J# T拓展
D% j% W9 l9 L# Z# u# ?
) w8 f" D% d5 @- y& }批量插入) Y* W6 C! T; Q/ P/ U8 S* q
# G! C$ v0 R% r5 N# ^: [- ^
利用语法批量插入数据,可能很多小伙伴都会了,但是我还是死皮赖脸说一说吧!
5 r: V N$ ~3 N( E/ e9 N+ i. u* v8 r* C
0 L7 @( Y' [( r7 b S e: I2 g比如这样,就是一个99乘法表的数据,逻辑是和学语言的时候打印99乘法表一样的,只不过这里把打印变成了写入Excel; W; O0 S2 \* G: J
% y/ q" K( y6 Vfor i in range(0, 9):
+ G. O. `5 n- |+ C. U for j in range(0, i+1):
% O0 I2 b# _- h1 s3 v workSheet99.write(i, j, "%d * %d = %d" % (i+1, j+1, ((i+1) * (j+1))))
- k* b& O. u( P1 O% I* i1
1 R4 F! S2 {" r I! p2 e2% K7 s8 T2 t" g" b
3; K2 W3 ?7 B! ~% \* m% p; n
当然,还有很多很多操作,利用语法去实现,你会发现批量插入Excel数据如此简单,对于很多经常使用Excel批量插入或者处理数据人,感觉世界都轻松了起来!或许这就是程序改变世界吧!也验证了那句:人生苦短,我用Python!
: u* v, s& C6 ^& f, |
' D5 T) v, }8 b; O# x# k报错注意
1 T& B# t5 n7 [7 r/ y. N0 [( M# m6 T8 @: i" `
如果你在进行这一系列操作的时候,报错了,点击错误链接跳转的是保存文件那一行,并且是这样的错误,那么恭喜你,没关Excel(我经常这样),因为你打开了这个数据表,他就被WPS之类的软件占用了,程序就没法对其进行读写操作了,所以这点是需要注意的!
% D; K% p& A6 n
4 R+ A2 U- y) H: ` L5 MPermissionError: [Errno 13] Permission denied: 'xxxxx.xls'% S4 I3 b$ q6 n. J0 W
2 F9 X. G: z+ p; h, P0 Q! {0 K/ }
$ L/ C$ ^" }1 Z7 C1 G% q9 G————————————————# N# {' M2 d1 x9 P
版权声明:本文为CSDN博主「Android_YU」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
0 o7 w/ h) d: N& G原文链接:https://blog.csdn.net/qq_44720366/article/details/106152028
$ }9 [) e. F% Q' r6 T' U0 M
, v0 E% W$ x. {" W& w. _2 F" \3 n- n6 Z% j8 f3 t5 P5 Y# o0 y
& t1 @) J$ v! Q& b' G
|
zan
|