- 在线时间
- 1630 小时
- 最后登录
- 2024-1-29
- 注册时间
- 2017-5-16
- 听众数
- 82
- 收听数
- 1
- 能力
- 120 分
- 体力
- 558483 点
- 威望
- 12 点
- 阅读权限
- 255
- 积分
- 172918
- 相册
- 1
- 日志
- 0
- 记录
- 0
- 帖子
- 5313
- 主题
- 5273
- 精华
- 18
- 分享
- 0
- 好友
- 163
TA的每日心情 | 开心 2021-8-11 17:59 |
---|
签到天数: 17 天 [LV.4]偶尔看看III 网络挑战赛参赛者 网络挑战赛参赛者 - 自我介绍
- 本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。
 群组: 2018美赛大象算法课程 群组: 2018美赛护航培训课程 群组: 2019年 数学中国站长建 群组: 2019年数据分析师课程 群组: 2018年大象老师国赛优 |
/ q# e ~9 U, q* J; d: C& D: O
如何用Python提高办公(Excel)效率?8 n! t9 R: V- q0 l0 {' E
这几天在家里利用网络视频教程学习了一下简单的Python爬虫,然后需要把爬取的数据保存到Excel表,就接触了一下 xlwt 这个Python库,不用不知道,一用吓一跳,当我写一个99乘法表,连带我导包只需要 7 行代码的时候,我才想起来,为啥那么多文员的招聘上写着 “会Python的优先” 了 ,想想语言里面的那些语法,再想想配合起来用,几万行数据也不过几行代码即可实现,那效率简直是快到令人难以呼吸啊!
: G/ m" a1 T" E文章目录
2 e) F0 G4 b. M6 _ z. A
( v- h1 o2 v; V) i( A准备xlwt库
( P5 S* }& ~' q安装xlwt包7 P( Y* X, G4 K ^9 \ @2 n
Python文件中导入包0 n. w+ }6 N3 K1 O; p
xlwt使用
: u/ n r" h) J) Y创建WorkBook对象! Y; d! a6 w. q0 O
创建Sheet5 E, E6 o0 {' {$ c, s! J. K
添加数据+ i, ^0 @: c `- d8 Y
保存文件
4 A6 \2 d( d+ ^5 i拓展
) Z+ W+ {; W3 A# d* Y6 P+ h批量插入
3 B' t$ i+ t: l! c% r报错注意
1 K+ o8 @& _) @8 s8 b. X1 b+ X准备xlwt库
8 B( v3 ]( w$ \2 z/ @+ L' D' B
5 J, v- p5 d( @4 D: WPython里面经过多年沉淀下来的库也是数不胜数,并且很多库的功能都非常强大,我都觉得以后哪怕是一个简单的文员都需要掌握Python了,虽然现在还不算是硬性要求,但是这种趋势已经在社会上形成了,毕竟互联网时代是个快节奏时代,能有高效率的办公谁还喜欢低效率呢?
0 i2 G4 c4 `& J; f, E* p0 V
d: w8 Y/ p& N安装xlwt包
: D' }7 ?. y q+ n& n8 I% A
& r. ?! q8 A0 I4 V8 i& [' WFile ->> Setting ->> Project:Name ->> Project Interpreter ->> 右边 + 号 ->> 搜索xlwt ->> 选中xlwt ->> 左下角 Install Package ->> 等待安装完成
' j) E7 v" q/ Z% k& @/ G
1 a+ S1 K# J9 i* q( `5 M' f6 b R
- B: m9 x2 i8 `# e, c# w; [
, a/ d9 `# ~ |% _/ o* n
) W& P& U8 Y- y8 D4 ]Python文件中导入包
' B! @7 g; j1 \+ T' @$ @
$ [& q! z3 b: [% ^+ L! s: gimport xlwt # 导入 xlwt 包
8 @& Y) a) B8 ]4 G" O* K3 k1
% E" v3 Q1 x( _2 h% qxlwt使用
; x' r3 V1 u7 m5 M& f' K, E9 d7 j2 D* B" p
xlwt库的使用也非常简单,简单的写入数据可以按照如下四步(一步一行代码)走:
& x& i& O l5 ^$ C1 o6 t& H" j$ o; v
创建WorkBook对象
- m' E2 g* A+ b3 a, o1 _0 d0 z! W; w
创建WorkBook对象就约等于创建了一个Excel文件了,创建对象的时候只需要设置一下编码格式就行了,默认是ASCII,所以我们一般都需要设置一下 “UTF-8”
5 ^4 i, s2 S I# v0 I# f3 h# X( l8 T5 X7 P" f6 s0 X c: M
workBook = xlwt.Workbook(encoding="utf-8") # 创建workBook对象/ Y, T. [* o0 c/ ^: b' c) {- g3 V- ?
18 l9 i6 j& ?& _
还有一个不常用的属性:压缩等级,直接不写就是默认 0; o6 y9 s' E- }! ^ `
8 p" {* l! j, B9 |9 m
# style_compression 是表示设置压缩的等级
6 x4 I B2 V" _+ J" ]' ]3 m& eworkBook = xlwt.Workbook(encoding="utf-8",style_compression=0)# b$ R9 ~: L7 T) r4 ^2 X
1
% H* ~- B5 o+ z, l: O( s1 c8 X+ f2+ T* W1 U7 d2 `
创建Sheet3 J3 K, r7 m2 y2 a
9 O+ X! ]3 {$ Z5 m& H3 ?用过Excel的人应该都知道,一个xls(或xlsx)文件是可以有多个表的,当然可能我们很多时候习惯每个文件只有一个表有数据。这里只需调用WorkBook的 .add_sheet() 方法,设置一下表名,即可创建一个表,当然我们默认是设置一下覆盖属性:cell_overwrite_ok=True 表示可以覆盖原有数据进行写入操作: Q c" y4 A: L: o% w
: R: J3 f" k; k) J$ gworkSheet = workBook.add_sheet("sheet1",cell_overwrite_ok=True)
! X6 V2 q! z$ k4 x9 d" Q1* ^: \' x7 q" W/ v" |( X
添加数据6 S9 o- I, d8 {# ^0 _7 A
/ S" z! M7 a9 m7 X5 `文件有了,表有了,自然就剩下添加数据了,不然咱建个空文件、空表干啥呢?右键新建它不香嘛?写入数据的操作也是简单至极,调用workSheet的 .write() 方法,填入 行、列、数据 三个参数即可插入数据(作为一个程序猿,第一个数据当然要是神圣的:Hello World !)- D9 U+ P8 m6 ^4 A- ~0 V7 ^0 F
) |. P7 g* b6 ?* i& z) Z |# T
workSheet.write( 0, 0,"Hello Wolrd !")
, M9 w* \5 K c1 [% e# w) c1
L0 z/ }7 s8 V; o" L2 v) e保存文件
4 X: y2 f! { p8 G5 o
4 n' ]- E, \% _/ o- J文件创建了,并不代表保存了,所以在写入完数据以后需要进行文件的保存(这里是保存在当前Python文件的同一个文件夹下)
( l k3 c0 K! N8 J3 I7 r% D$ g8 \
- ^% o0 K4 ?( D& S6 a) G& qworkBook.save("Hello World.xls")
5 P* ]! m5 B( S# I$ V1
6 j' w$ K" B0 U: \ X( e- P拓展 c0 M& R' ?1 z& i, ?* Z* F! f
# {" c( Y3 _) H: s
批量插入! j# Z4 x4 b% L' M1 o1 t
/ |0 Y3 e. U$ }( ]$ ?
利用语法批量插入数据,可能很多小伙伴都会了,但是我还是死皮赖脸说一说吧!7 y# Z. ^" w+ D3 z
7 x( p5 Y" R: R1 P% K4 ?, t; C- C
比如这样,就是一个99乘法表的数据,逻辑是和学语言的时候打印99乘法表一样的,只不过这里把打印变成了写入Excel
2 k" q! I [* p9 \& \; }( J1 |) K: b2 O, v0 [6 [1 j
for i in range(0, 9):
1 S6 ?) h( P( C& C+ L4 j' C6 D for j in range(0, i+1):
' y, r- J# ~+ t6 \; n2 t+ ]7 s workSheet99.write(i, j, "%d * %d = %d" % (i+1, j+1, ((i+1) * (j+1))))7 R4 V) X( y6 A3 B" l
1
6 W- A9 k: v% e2
& Z8 y" \7 _0 F9 y' F' c3% ~0 f7 ?7 v4 |
当然,还有很多很多操作,利用语法去实现,你会发现批量插入Excel数据如此简单,对于很多经常使用Excel批量插入或者处理数据人,感觉世界都轻松了起来!或许这就是程序改变世界吧!也验证了那句:人生苦短,我用Python!$ @* e' j' J0 L" a
0 a/ M+ \3 J' j: |: X5 v# P, m
报错注意 N4 H2 u/ Z) F: Y/ E! ~) Q. [- R
* Z B# \. U. a+ P/ W: c如果你在进行这一系列操作的时候,报错了,点击错误链接跳转的是保存文件那一行,并且是这样的错误,那么恭喜你,没关Excel(我经常这样),因为你打开了这个数据表,他就被WPS之类的软件占用了,程序就没法对其进行读写操作了,所以这点是需要注意的!
) E: w- z, ^, I- m i$ i" j9 x3 l4 q) [; E- e
PermissionError: [Errno 13] Permission denied: 'xxxxx.xls'9 l! S) Y8 ^& b f
1 ]: h' X' ~; n5 h% Z9 e0 m- B
( G/ ^7 @9 K. a: a————————————————
9 l+ z9 J$ W9 D# |" t- {: K: L版权声明:本文为CSDN博主「Android_YU」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
3 G! A" J! r3 Y. o原文链接:https://blog.csdn.net/qq_44720366/article/details/106152028: ^: c4 _1 g9 ~. ?
8 \) w) d, o1 t3 F# e
) h) h' C3 q: q, Q- f6 {
3 t4 h, D2 R/ Q8 Q |
zan
|