1. 首页 > 知识问答 > 十个有趣的 Python 高级脚本,建议收藏!

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

4、解压文件

使用zipfile模块进行文件解压,同理也可以对文件进行压缩。

# 解压文件from zipfile import ZipFileunzip = ZipFile("file.zip", "r")unzip.extractall("output Folder")登录后复制

5、Excel工作表合并

帮助你将Excel工作表合并到一张表上,表内容如下图。

6张表,其余表的内容和第一张表都一样。

设置表格数量为5,将会合并前5张表的内容。

import pandas as pd# 文件名filename = "test.xlsx"# 表格数量T_sheets = 5df = []for i in range(1, T_sheets+1):sheet_data = pd.read_excel(filename, sheet_name=i, header=None)df.append(sheet_data)# 合并表格output = "merged.xlsx"df = pd.concat(df)df.to_excel(output)登录后复制

结果如下。

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.pide(grey, inverse_blur, scale=256.0)# 保存cv2.imwrite('sketch.jpg', sketch_img)cv2.waitKey(0)cv2.destroyAllWindows()登录后复制

原图如下。

素描图如下,还挺好看的。

7、获取CPU温度

有了这个Python脚,你将不需要任何软件来了解CPU的温度。

# 获取CPU温度from time import sleepfrom pyspectator.processor import Cpucpu = Cpu(monitoring_latency=1)with cpu:while True:print(f'Temp: {cpu.temperature} °C')sleep(2)登录后复制

8、提取PDF表格

有的时候,我们需要从PDF中提取表格数据。

一时间你可能会先想到手工整理,但是当工作量特别大,手工可能就比较费劲。

然后你可能会想到一些软件和网络工具来提取 PDF 表格。

下面这个简单的脚将帮助你在一秒钟内完成相同的操作。

# 方法①import camelottables = camelot.read_pdf("tables.pdf")print(tables)tables.export("extracted.csv", f="csv", compress=True)# 方法②, 需要安装Java8import tabulatabula.read_pdf("tables.pdf", pages="all")tabula.convert_into("table.pdf", "output.csv", output_format="csv", pages="all")登录后复制

PDF文档的内容如下,包含了一个表格。

提取到的CSV文件内容如下。

9、截图

该脚将简单地截取屏幕截图,而无需使用任何屏幕截图软件。

在下面的代码中,给大家展示了两种Python截取屏幕截图的方法。

# 方法①from mss import msswith mss() as screenshot:screenshot.shot(output='scr.png')# 方法②import PIL.ImageGrabscr = PIL.ImageGrab.grab()scr.save("scr.png")登录后复制

10、拼写检查器

这个Python脚可以进行拼写检查,当然只对英文有效,毕竟中文博大精深呐。

# 拼写检查# 方法①import textblobtext = "mussage"print("original text: " + str(text))checked = textblob.TextBlob(text)print("corrected text: " + str(checked.correct()))# 方法②import autocorrectspell = autocorrect.Speller(lang='en')# 以英语为例print(spell('cmputr'))print(spell('watr'))print(spell('survice'))登录后复制