在生活和工作中,往往充斥着一些枯燥且乏味的事情。所以要让自己从机械地重复性劳动中解放出来,才是解放身心的正确姿势。
本文列举了我自己平时在工作和生活中的七个小场景,每个场景都是带有这样「重复性」性质的事情,一起看看我是如何用 Python 这门简单易懂的编程语言去解决这些事情吧。
全文我都以 macOS 环境来模拟实际的操作情况,当中的代码也可以在 Windows 下运行,稍微修改路径即可。
🗂场景 :批量修改文件名
一般来说,注重信息安全的公司都不会允许员工私自安装第三方软件。这样的情况就发生在公司给我配的 Windows 笔记本上。
如果你用是的 macOS,那么你可以很快地选中相同类型的一批文件,然后右键调出系统自带的重命名功能批量修改文件命名。但是这些命名修改只能实现一些简单地头尾修改或是替换,如果想要修改文件拓展名则不行。
所以不管是用 Windows 也好,还是用 macOS 也好,我就自己写一个简单的 Python 脚本吧!假设我现在有这么一堆文件,都是 .png
为后缀的,我想把它们全部都换成 .jpg
格式。
普通版
碰上我上面说的这种无法私自安装第三方软件的用不了的情况,那么你就要自己手动一个一个右键然后重命名了。
Python 版
我可以简单利用 Python 内置的 os
库来进行文件命名的修改操作。
#!usr/bin/env python3
#coding:utf-8
import os os.chdir(r'/Users/linxiaoyue/Desktop/pictures')
#os.listdir() 函数可以直接获取当前文件夹下所有可见文件的文件名
old_names = os.listdir(os.getcwd())
new_names = list(map(lambda x: x.replace('.png', '.jpg'), old_names))
# 使用内置的 zip 方法一一对应地进行迭代
for old_name, new_name in zip(old_names, new_names):
os.renames(old_name, new_name) #os.renames()方法直接替换文件名
print('文件已完成重命名……✅')
一般的文件名重命名到这就可以结束了。
但是如果碰到是这种中英文标点混杂的极端方式命名的文件,只想要以当中的中文来命名怎么办?
这时候就可以加入一个正则表达式的功能,可以让我们的程序更加强大。关于正则表达式的相关介绍可以参考王树义老师的这篇文章:
👉 关联阅读:如何用 Python 和正则表达式抽取文本结构化信息?
Python 正则版
#!usr/bin/env python3
#coding:utf-8
import re
import os
os.chdir(r'/Users/linxiaoyue/Desktop/rename_file')
old_names = os.listdir(os.getcwd())
###################################
def file_rename(text):
contexts = re.findall(r'[\u4e00-\u9fa5]', text)
return ''.join(contexts) + '.md'
new_names = list(map(file_rename, old_names))
###################################
for old_name, new_name in zip(old_names, new_names):
os.renames(old_name, new_name) #os.renames()方法直接替换文件名
这里我就仅调用了 Python 内置的 re
库用来实现正则表达式方法, \u4e00-\u9fa5
这一范围内的 unicode 字符已经基本涵盖了所有中文单字,可以直接将当中所有中文抽取出来后再拼贴起来。最后利用内置的 map
函数对旧文件名中的每个文件名进行替换操作,并再转换成列表形式。
这样,复杂的命名情况也能迎刃而解。
关于Python技术储备
学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!
一、Python所有方向的学习路线
Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
二、Python必备开发工具
三、精品Python学习书籍
当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。
四、Python视频合集
观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
五、实战案例
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
六、Python练习题
检查学习结果。
七、面试资料
我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
最后祝大家天天进步!!
上面这份完整版的Python全套学习资料已经上传至CSDN官方,朋友如果需要可以直接微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】。