去年4月,我在Github和pypi同步发布了自动化办公的专用库:python-office
,并且有幸得到了开源中国的推荐。
截至目前,在GitHub和Gitee获得的star⭐分别是:658、573,在小破站和百度发布的python-office
的相关教程,都获得了10w+的播放。
作为初次使用这个项目的小白,经常会被这个项目可以用1行代码实现复杂的办公需求所吸引,但简单的操作背后,有哪些复杂的技术支撑呢?
今天就给大家揭秘5个在python-office
这个库中使用到的实用编程技巧,帮助感兴趣的同学进一步提高编程技术~
内置函数
首先要说的是最基础,也最实用的python技巧:使用内置函数。
给大家举个例子,python-office
这个库里有一个功能非常受欢迎:PDF转Word,这个功能,既可以单个处理,也可以批量处理。
在批量处理之前/之后,程序会给你报告一下,本次待处理/处理了多少个文件。
这时候就需要用到一个编程:统计列表里的文件总数。
如果你不用内置函数,以实现你会这么写代码:
1 | file_list = [a.pdf,b.pdf,c.pdf...] |
如果使用内置函数,1行代码就搞定了:
1 | file_list = [a.pdf,b.pdf,c.pdf...] |
使用内置函数除了代码简洁外,还有一个很明显的好处:代码速度更快!
装饰器
运行过代码的朋友还会发现:我们每个功能,都是自带视频教程的。
如何在不改变代码的情况下,给代码增加功能呢?这时候就可以用装饰器来实现了。
1 |
|
自定义装饰器的方法,之前分享过:利用世界杯,读懂 Python 装饰器
类型提示(Type Hints)
类型提示可以帮助开发者更容易地理解代码,同时可以让一些工具(如IDE和静态类型检查器)提供更好的代码分析和自动补全功能。类型提示在Python 3.5及以后的版本中通过类型注解(Type Annotations)和typing模块得到支持。
对于写Java,尤其是写C++的程序员来说,Python中的类型定义用起来很难受。Type Hints
可以提供一定程度的类型提示功能,但请注意,这个提示只对阅读代码有用,对于代码编译和运行没有任何作用。
举个例子:从100个Excel中,搜索包含’程序员晚枫’这几个字的Excel文件。
1 |
|
其中,search_key: str, target_dir: str
表示:指定了参数的类型为str。
面向对象
这一点不用多说了,因为稍微懂一点专业开发的朋友,都知道什么是面向对象。而不懂面向对象的业余开发,也没有必要懂。
具体代码,大家可以去python-office
的代码仓库查看,每个api都是基于对象实现的。
- GitHub:python-office
Path
pathlib是跨平台的、面向对象的路径操作模块,可适用于不同的操作系统,其操作对象是各种操作系统中使用的路径(包括绝对路径和相对路径),pathlib有两个主要的类,分别为PurePath和Path。
python-office
中主要使用的是Path
,用起来真的很方便!
1 | file_path = Path('./程序员晚枫的文件夹') / Path('./res') |
使用Path方法,拼接路径的时候就不需要使用os.join了,可以直接用/
你敢信吗?大大提高了代码的可读性~
以上所有仓库的功能介绍,我都加入了原创课程:给小白的《50讲Python自动化办公》都是1行Python代码就能实现的,适合纯小白的课程,需要可以加入学习哟~
- 加入学习👉给小白的《50讲Python自动化办公》
大家学习 或 使用代码过程中,有任何问题,都可以加入读者群交流哟~👇