10个有趣的高级Python脚本,建议收藏

在日常的生活和工作中,我们经常会遇到一些大小问题,其中有很多的问题,都是可以使用一些简单的Python代码就能解决 。
 
比如不久前的复旦大佬,用130行Python代码硬核搞定核酸统计,大大提升了效率,节省了不少时间 。
 
今天,就带大家学习一下10个Python脚本程序 。
 
虽然简单,不过还是蛮有用的 。
 
有兴趣的可以自己去实现,找到对自己有帮助的技巧 。
 
▍1、Jpg转Png
 
图片格式转换,以前小F可能第一时间想到的是【格式工厂】这个软件 。
 
如今编写一个Python脚本就能完成各种图片格式的转换,此处以jpg转成png为例 。
【10个有趣的高级Python脚本,建议收藏】 
有两种解决方法,都分享给大家 。
 
# 图片格式转换, Jpg转Png# 方法①from PIL import Imageimg = Image.open('test.jpg')img.save('test1.png')# 方法②from cv2 import imread, imwriteimage = imread("test.jpg", 1)imwrite("test2.png", image) 
▍2、PDF加密和解密
 
如果你有100个或更多的PDF文件需要加密,手动进行加密肯定是不可行的,极其浪费时间 。
 
使用Python的pikepdf模块,即可对文件进行加密,写一个循环就能进行批量加密文档 。
 
# PDF加密import pikepdfpdf = pikepdf.open("test.pdf")pdf.save('encrypt.pdf', encryption=pikepdf.Encryption(owner="your_password", user="your_password", R=4))pdf.close() 
有加密那么便会有解密,代码如下 。
 
# PDF解密import pikepdfpdf = pikepdf.open("encrypt.pdf",password='your_password')pdf.save("decrypt.pdf")pdf.close() 
▍3、获取电脑的配置信息
 
很多小伙伴可能会使用鲁大师来看自己的电脑配置,这样还需要下载一个软件 。
 
使用Python的WMI模块,便可以轻松查看你的电脑信息 。
 
# 获取计算机信息import wmidef System_spec():Pc = wmi.WMI()os_info = Pc.Win32_OperatingSystem()[0]processor = Pc.Win32_Processor()[0]Gpu = Pc.Win32_VideoController()[0]os_name = os_info.Name.encode('utf-8').split(b'|')[0]ram = float(os_info.TotalVisibleMemorySize) / 1048576print(f'操作系统: {os_name}')print(f'CPU: {processor.Name}')print(f'内存: {ram} GB')print(f'显卡: {Gpu.Name}')print("n计算机信息如上 ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑")System_spec() 
就以小F自己的电脑为例,运行代码就能看到配置 。

10个有趣的高级Python脚本,建议收藏

文章插图
 
▍4、解压文件
 
使用zipfile模块进行文件解压,同理也可以对文件进行压缩 。
 
# 解压文件from zipfile import ZipFileunzip = ZipFile("file.zip", "r")unzip.extractall("output Folder") 
▍5、Excel工作表合并
 
帮助你将Excel工作表合并到一张表上,表内容如下图 。
10个有趣的高级Python脚本,建议收藏

文章插图
 
6张表,其余表的内容和第一张表都一样 。
 
设置表格数量为5,将会合并前5张表的内容 。
 
import pandas as pd# 文件名filename = "test.xlsx"# 表格数量T_sheets = 5df = []for i in range(1, T_sheets+1):sheet_data = https://www.isolves.com/it/cxkf/yy/Python/2022-05-24/pd.read_excel(filename, sheet_name=i, header=None)df.Append(sheet_data)# 合并表格output = "merged.xlsx"df = pd.concat(df)df.to_excel(output) 
结果如下 。
10个有趣的高级Python脚本,建议收藏

文章插图
 
▍6、将图像转换为素描图
 
和之前的图片格式转换有点类似,就是对图像进行处理 。
 
以前大家可能会使用到美图秀秀,现在可能就是抖音的滤镜了 。
 
其实使用Python的OpenCV,就能够快速实现很多你想要的效果 。
 
# 图像转换import cv2# 读取图片img = cv2.imread("img.jpg")# 灰度grey = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)invert = cv2.bitwise_not(grey)# 高斯滤波blur_img = cv2.GaussianBlur(invert, (7, 7), 0)inverse_blur = cv2.bitwise_not(blur_img)sketch_img = cv2.divide(grey, inverse_blur, scale=256.0)# 保存cv2.imwrite('sketch.jpg', sketch_img)cv2.waitKey(0)cv2.destroyAllwindows()


推荐阅读