- 在线时间
- 1630 小时
- 最后登录
- 2024-1-29
- 注册时间
- 2017-5-16
- 听众数
- 82
- 收听数
- 1
- 能力
- 120 分
- 体力
- 564640 点
- 威望
- 12 点
- 阅读权限
- 255
- 积分
- 174615
- 相册
- 1
- 日志
- 0
- 记录
- 0
- 帖子
- 5313
- 主题
- 5273
- 精华
- 3
- 分享
- 0
- 好友
- 163
TA的每日心情 | 开心 2021-8-11 17:59 |
|---|
签到天数: 17 天 [LV.4]偶尔看看III 网络挑战赛参赛者 网络挑战赛参赛者 - 自我介绍
- 本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。
 群组: 2018美赛大象算法课程 群组: 2018美赛护航培训课程 群组: 2019年 数学中国站长建 群组: 2019年数据分析师课程 群组: 2018年大象老师国赛优 |
" s* s+ S9 N7 ~' C" N& ?% o
如何用Python提高办公(Excel)效率?( t5 G' N8 G. O- {: |& P$ G" C
这几天在家里利用网络视频教程学习了一下简单的Python爬虫,然后需要把爬取的数据保存到Excel表,就接触了一下 xlwt 这个Python库,不用不知道,一用吓一跳,当我写一个99乘法表,连带我导包只需要 7 行代码的时候,我才想起来,为啥那么多文员的招聘上写着 “会Python的优先” 了 ,想想语言里面的那些语法,再想想配合起来用,几万行数据也不过几行代码即可实现,那效率简直是快到令人难以呼吸啊!
! H. e9 [5 m( r+ v5 b9 m- H文章目录2 x- I: o7 ?( L* }: ^$ u; }( V
" i! C+ X d1 Q$ K$ ]- f
准备xlwt库
/ g+ r4 T; m6 ?9 M( M; K% @# M/ S安装xlwt包
# I: N: A+ r, v. x5 P. CPython文件中导入包0 O5 w4 S+ R; r1 V
xlwt使用- I- {/ ^% n* m. q. ~& ?+ U
创建WorkBook对象
+ p1 h6 i( L/ D& E' K创建Sheet
, B# h4 P) G& Y. ^添加数据% N5 P5 y X4 L/ R+ F
保存文件: Y3 j: C+ ?# e% d3 s" o7 g" w
拓展
0 q7 B( L+ j. _6 q批量插入9 U# M1 e; G1 I5 @: B
报错注意2 r; R; R, n) K" y
准备xlwt库
9 C# {% R/ ~( P- f, h$ F$ w
$ ^ j! j% D6 X+ _Python里面经过多年沉淀下来的库也是数不胜数,并且很多库的功能都非常强大,我都觉得以后哪怕是一个简单的文员都需要掌握Python了,虽然现在还不算是硬性要求,但是这种趋势已经在社会上形成了,毕竟互联网时代是个快节奏时代,能有高效率的办公谁还喜欢低效率呢?( r& a0 L7 D6 _& q
' `# v) m" \6 H* K5 y" [安装xlwt包
" K q' A6 v+ g) {# t. Q/ p6 J8 T$ Z& B
File ->> Setting ->> Project:Name ->> Project Interpreter ->> 右边 + 号 ->> 搜索xlwt ->> 选中xlwt ->> 左下角 Install Package ->> 等待安装完成
6 V! V8 j/ I I9 E( y6 g( \' ~; u* k+ |- p. n* q: r6 R* W, Z
' b" c2 N3 s L2 O8 p
: _+ w. F) N7 w/ s1 f( C; ^. y
% B2 U$ m! t) n" |- ]6 O
Python文件中导入包7 W. J6 j/ {* T% c
/ E. t- Z; G5 m. c- a1 W' F
import xlwt # 导入 xlwt 包
5 k! F1 ?' R, E5 W; J4 Z1* S+ I8 ?; r4 A7 t; x9 S4 y
xlwt使用
@# `- D5 J/ K5 T
" q! N( M/ P$ _5 F* k' Fxlwt库的使用也非常简单,简单的写入数据可以按照如下四步(一步一行代码)走:
8 S9 x% u# O% ?! U, }
" r7 c$ l, W7 I: q/ F& V创建WorkBook对象6 C6 W5 s, D0 U& Y: Z, b/ t s0 d
9 m" ^! v$ A- K9 M; {5 _! G+ v0 g
创建WorkBook对象就约等于创建了一个Excel文件了,创建对象的时候只需要设置一下编码格式就行了,默认是ASCII,所以我们一般都需要设置一下 “UTF-8”0 h$ r4 G0 m4 e" h/ F
$ P5 ^( s: ^: O/ U0 }. [workBook = xlwt.Workbook(encoding="utf-8") # 创建workBook对象' f! j" ], p: U9 _
1
( G( ^ v* q" P2 M. ^% ]还有一个不常用的属性:压缩等级,直接不写就是默认 0
& E# o2 f$ H* m1 S" @- x4 W5 E1 p' h( J p: p: m+ ]: W; u; G; N
# style_compression 是表示设置压缩的等级5 M9 U, X& Q" l9 z7 Y
workBook = xlwt.Workbook(encoding="utf-8",style_compression=0)
9 h& ?6 X( O2 |- a& V! V( x9 n14 Z" N) v0 d) V5 l {- g
2
2 X) ^* E2 T6 R N* a& D创建Sheet
/ s" I% S! x. b' {6 n) F, L( v5 n) E+ Y* S
用过Excel的人应该都知道,一个xls(或xlsx)文件是可以有多个表的,当然可能我们很多时候习惯每个文件只有一个表有数据。这里只需调用WorkBook的 .add_sheet() 方法,设置一下表名,即可创建一个表,当然我们默认是设置一下覆盖属性:cell_overwrite_ok=True 表示可以覆盖原有数据进行写入操作: x0 N- {" S, G d' n
) y, |2 C8 z. I0 T3 JworkSheet = workBook.add_sheet("sheet1",cell_overwrite_ok=True)
0 Z: r. X* s5 x) B; Y7 K1
5 l" I" r8 u' j( H添加数据
& x' U8 [7 j t8 b3 q6 v3 V
, C8 a$ o0 Y6 X文件有了,表有了,自然就剩下添加数据了,不然咱建个空文件、空表干啥呢?右键新建它不香嘛?写入数据的操作也是简单至极,调用workSheet的 .write() 方法,填入 行、列、数据 三个参数即可插入数据(作为一个程序猿,第一个数据当然要是神圣的:Hello World !)8 V; y: \+ d2 u% w+ G
' ?. a n6 r8 i B6 `
workSheet.write( 0, 0,"Hello Wolrd !")4 F4 J' C4 w2 C+ Y" `- _
1/ }( @+ D6 U9 O3 e# y
保存文件
% F {* ~3 F1 o0 g# {
( H! `2 n: w5 @8 C9 Y) ^文件创建了,并不代表保存了,所以在写入完数据以后需要进行文件的保存(这里是保存在当前Python文件的同一个文件夹下)5 k0 m& J! ~( E+ O1 z* R$ f
5 s. _4 S8 D6 u# _5 t# @/ [
workBook.save("Hello World.xls"): x, e \& M8 G- N V
1
- U2 M2 \4 ]# w% _ X拓展/ P7 f4 _! x# e) x
0 K: @( H0 r! B$ i% b8 w4 C
批量插入
) S* g' W) x, y8 P8 o5 i$ J% n' D2 _5 `% T( L! l
利用语法批量插入数据,可能很多小伙伴都会了,但是我还是死皮赖脸说一说吧!% s( M$ M# H" m4 |0 h; a7 ?* m
5 I" |. {0 p+ d2 c比如这样,就是一个99乘法表的数据,逻辑是和学语言的时候打印99乘法表一样的,只不过这里把打印变成了写入Excel
; r' p' r, r4 ^3 W2 {% H! Z) m1 u- N) ~9 r/ G; l' I: w7 j
for i in range(0, 9):; e" u+ D; ^# g+ a
for j in range(0, i+1):6 U% `- o2 V3 k- G
workSheet99.write(i, j, "%d * %d = %d" % (i+1, j+1, ((i+1) * (j+1))))
, A+ d( c* d4 G6 ~1: ~8 D9 |! S1 B2 o5 S: ?; m
2
, g6 f7 I4 S, O3
6 Z2 q4 V7 K6 \* D当然,还有很多很多操作,利用语法去实现,你会发现批量插入Excel数据如此简单,对于很多经常使用Excel批量插入或者处理数据人,感觉世界都轻松了起来!或许这就是程序改变世界吧!也验证了那句:人生苦短,我用Python!
/ W; C) f% {3 p% S y1 O
: U |3 }* X4 h: F; s) c报错注意. L, h' V" D& ^2 M+ e0 A
. ]* x) V7 O4 y1 P9 l7 _# j5 }) J
如果你在进行这一系列操作的时候,报错了,点击错误链接跳转的是保存文件那一行,并且是这样的错误,那么恭喜你,没关Excel(我经常这样),因为你打开了这个数据表,他就被WPS之类的软件占用了,程序就没法对其进行读写操作了,所以这点是需要注意的!
9 t) ^# y. x; }- d/ M2 Y5 y' q
5 m. A% [ @ rPermissionError: [Errno 13] Permission denied: 'xxxxx.xls'
5 N- P/ W, D: n/ F* n/ u& h+ `* Q/ h& L8 c# a1 ~4 p+ ^) A( l/ i" I
* F: c' e( b' f9 G, u————————————————' p( f! \' } o$ z' o$ Z
版权声明:本文为CSDN博主「Android_YU」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
- O1 T2 h+ H$ U原文链接:https://blog.csdn.net/qq_44720366/article/details/106152028
* N7 q1 j& u/ @" `/ w1 _7 D
% l3 d: Q! A- M( V2 y7 A3 b! w/ y' ?+ f$ _2 D
" [4 C% [0 x* a% t- _$ { |
zan
|