- 在线时间
- 1630 小时
- 最后登录
- 2024-1-29
- 注册时间
- 2017-5-16
- 听众数
- 82
- 收听数
- 1
- 能力
- 120 分
- 体力
- 565573 点
- 威望
- 12 点
- 阅读权限
- 255
- 积分
- 174895
- 相册
- 1
- 日志
- 0
- 记录
- 0
- 帖子
- 5313
- 主题
- 5273
- 精华
- 3
- 分享
- 0
- 好友
- 163
TA的每日心情 | 开心 2021-8-11 17:59 |
|---|
签到天数: 17 天 [LV.4]偶尔看看III 网络挑战赛参赛者 网络挑战赛参赛者 - 自我介绍
- 本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。
 群组: 2018美赛大象算法课程 群组: 2018美赛护航培训课程 群组: 2019年 数学中国站长建 群组: 2019年数据分析师课程 群组: 2018年大象老师国赛优 |
8 N x7 J. Q9 s/ Q4 F# [- |9 q; c0 @
如何用Python提高办公(Excel)效率?- _3 N4 _5 |* E
这几天在家里利用网络视频教程学习了一下简单的Python爬虫,然后需要把爬取的数据保存到Excel表,就接触了一下 xlwt 这个Python库,不用不知道,一用吓一跳,当我写一个99乘法表,连带我导包只需要 7 行代码的时候,我才想起来,为啥那么多文员的招聘上写着 “会Python的优先” 了 ,想想语言里面的那些语法,再想想配合起来用,几万行数据也不过几行代码即可实现,那效率简直是快到令人难以呼吸啊!
B& M7 H( z) I& Y+ B. K, i. K文章目录
% y" Y5 l# s: W2 ]* m: X0 k3 [5 W
7 F3 Y% ?, e! t准备xlwt库
/ v/ S. |# F4 f- M2 a/ H5 p安装xlwt包' d' J$ D, M. c' d. f6 u
Python文件中导入包! C9 d' Z2 D4 M, T
xlwt使用
4 v: {2 U1 E$ \创建WorkBook对象
7 C* X# N/ ?) v% ]& S& n创建Sheet
* s5 e i7 o( Z添加数据3 w- j% N- m5 B3 d
保存文件 x- W3 @* ]8 B* l
拓展; | K! g, a: B6 ~, C
批量插入
4 v3 \6 r8 S w5 S报错注意
! h" _8 H/ C/ a- a) }% L8 y' l准备xlwt库
; m% i- s, w( X6 j! ^; ]6 p
" |: @, ?/ h9 APython里面经过多年沉淀下来的库也是数不胜数,并且很多库的功能都非常强大,我都觉得以后哪怕是一个简单的文员都需要掌握Python了,虽然现在还不算是硬性要求,但是这种趋势已经在社会上形成了,毕竟互联网时代是个快节奏时代,能有高效率的办公谁还喜欢低效率呢?$ @8 L$ L% ~+ i2 N5 {# P$ @
& M* V$ w! w0 i: p- v
安装xlwt包
) X- J: {5 |6 h4 J2 v' v+ m' ^# Q( S# P1 d! P0 [- T5 L! H4 Q2 F4 W
File ->> Setting ->> Project:Name ->> Project Interpreter ->> 右边 + 号 ->> 搜索xlwt ->> 选中xlwt ->> 左下角 Install Package ->> 等待安装完成
3 k7 ]! L8 f: L( j) }1 E
- T# u s3 E, q: s ^' W' C; m
5 b _" P' v# x1 N+ T0 C
/ O1 [/ u& _1 j# M' _. m( B* g
! _% y# x% j f$ D/ t5 Z$ X5 Z+ i1 m
Python文件中导入包0 x& c( H6 u7 e' ?
$ ^' F% K- l( d' Y" h( [
import xlwt # 导入 xlwt 包
( I# r( T* X: @& t5 D) C11 n8 j1 s+ ]( t- f* R8 h( `3 p& s
xlwt使用/ Q t& _3 ~, b) i4 w
3 r3 G. }* l4 m( U& S* b0 vxlwt库的使用也非常简单,简单的写入数据可以按照如下四步(一步一行代码)走:0 ]# ?0 x; n7 A w; \8 j" Z# l: H
0 S/ G* E, g9 L# x创建WorkBook对象
+ F, i. P4 `' g8 D( l' `8 q, H6 K+ C. A+ P
创建WorkBook对象就约等于创建了一个Excel文件了,创建对象的时候只需要设置一下编码格式就行了,默认是ASCII,所以我们一般都需要设置一下 “UTF-8”
( C" i( E- u1 z p+ t6 ^6 V3 t3 s& `/ t7 Z
workBook = xlwt.Workbook(encoding="utf-8") # 创建workBook对象
0 j7 ]( S! i" j" ~2 v. q8 R. H$ ^# I16 \$ ]2 I' p) N" z
还有一个不常用的属性:压缩等级,直接不写就是默认 0+ G& q* U" [% g5 R
( j2 U/ }: v) b; }6 i w
# style_compression 是表示设置压缩的等级1 P( F& F3 W9 G5 O
workBook = xlwt.Workbook(encoding="utf-8",style_compression=0)- n4 f! t- }3 P
1
7 \* Y0 t! \& c2 J9 ?! d3 c26 ^' y. @& U5 a/ S, T% g
创建Sheet. t. | t- C5 S2 l+ f
) e9 N7 T( N4 L" h, k6 ~5 q
用过Excel的人应该都知道,一个xls(或xlsx)文件是可以有多个表的,当然可能我们很多时候习惯每个文件只有一个表有数据。这里只需调用WorkBook的 .add_sheet() 方法,设置一下表名,即可创建一个表,当然我们默认是设置一下覆盖属性:cell_overwrite_ok=True 表示可以覆盖原有数据进行写入操作" z3 Q% X, ~& N
1 Z" i" Z( o4 t2 r) KworkSheet = workBook.add_sheet("sheet1",cell_overwrite_ok=True)
- C/ v. M/ j' Q% y4 m& u8 R1- p, b, h2 C4 Z/ W
添加数据
' F6 S: O6 L" u
9 i5 W2 u9 N7 q. G0 m4 Q文件有了,表有了,自然就剩下添加数据了,不然咱建个空文件、空表干啥呢?右键新建它不香嘛?写入数据的操作也是简单至极,调用workSheet的 .write() 方法,填入 行、列、数据 三个参数即可插入数据(作为一个程序猿,第一个数据当然要是神圣的:Hello World !)
& k! f1 q, C( n) C9 N+ _" D' ^) V) |; u y: k, q3 l: K
workSheet.write( 0, 0,"Hello Wolrd !")+ v+ M+ ]4 B7 q- u5 B
1, Q/ y+ k& @: d* D. W
保存文件/ Z. X$ T' R6 o: N d+ g
5 T9 @. L% l0 K' \8 N1 D1 D文件创建了,并不代表保存了,所以在写入完数据以后需要进行文件的保存(这里是保存在当前Python文件的同一个文件夹下)4 D, L$ x: v7 r7 w! J) o1 }
: @- l- R8 u b8 |- y" ~workBook.save("Hello World.xls")( x) G8 Z x k. q' a( r
10 \4 x! S$ Y. C4 Z; q8 R
拓展; _+ R4 Q) E( U9 N$ N J: r" |
$ g) `7 d4 ]& b批量插入
0 K# M. a C- A' ^9 a5 Z$ U9 |. d, W. k8 l6 o( Z. z+ Q
利用语法批量插入数据,可能很多小伙伴都会了,但是我还是死皮赖脸说一说吧!2 L4 O, s0 A5 s& H S# ~
1 Q0 S c1 D1 N+ B ? x
比如这样,就是一个99乘法表的数据,逻辑是和学语言的时候打印99乘法表一样的,只不过这里把打印变成了写入Excel
" c, @2 b2 i" R6 L; Q
7 l# b) |. Z! o( [for i in range(0, 9):% e& N2 s/ Y, Y# f* X% [3 ~' P
for j in range(0, i+1):
9 a" ~, Q0 S# s; Y" v$ y6 U workSheet99.write(i, j, "%d * %d = %d" % (i+1, j+1, ((i+1) * (j+1))))
( l8 g" ?2 }5 g& ^+ ~3 q) [) }1; P; B$ S$ d+ s' _5 a
2
+ b' f6 K2 ?, L4 {% z& {3
- C; s* m- l6 r0 D. n当然,还有很多很多操作,利用语法去实现,你会发现批量插入Excel数据如此简单,对于很多经常使用Excel批量插入或者处理数据人,感觉世界都轻松了起来!或许这就是程序改变世界吧!也验证了那句:人生苦短,我用Python!& U5 {. S( K+ q
4 T3 t n) m2 n4 t4 C0 S; Z
报错注意
; G" D( d7 u+ J' Y& _- a+ Y9 Z
/ r+ z/ ?) t, B4 j如果你在进行这一系列操作的时候,报错了,点击错误链接跳转的是保存文件那一行,并且是这样的错误,那么恭喜你,没关Excel(我经常这样),因为你打开了这个数据表,他就被WPS之类的软件占用了,程序就没法对其进行读写操作了,所以这点是需要注意的!
" j$ a" x5 r1 I1 P1 Y* U9 @8 |4 N8 G5 r, a& n6 w! U
PermissionError: [Errno 13] Permission denied: 'xxxxx.xls'
" {: S6 V, v# ?
% d5 m7 t* `5 k: t0 N7 P8 O+ o- Y# z7 V
————————————————4 P4 T. n7 R: c6 a) g6 [
版权声明:本文为CSDN博主「Android_YU」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
0 Z( f. A- A% A4 B% U* e6 E原文链接:https://blog.csdn.net/qq_44720366/article/details/106152028
( K) s& O; S- K: r/ I0 s8 A
' o$ b/ B x/ f2 Z/ Y' A K* }. }6 i' ]3 e2 h$ ]7 t4 ]7 S# H2 f; Q
' {$ f/ Q W* G2 i |
zan
|