其中不少的问题,使用一些简单的python代码就能解决。
比如不久前的复旦大佬,用130行python代码硬核搞定核酸统计,大大提升了效率,节省了不少时间。
今天,小f就带大家学习一下10个python脚本程序。
虽然简单,不过还是蛮有用的。
有兴趣的可以自己去实现,找到对自己有帮助的技巧。
1、jpg转png图片格式转换,以前小f可能第一时间想到的是【格式工厂】这个软件。
如今编写一个python脚本就能完成各种图片格式的转换,此处以jpg转成png为例。
有两种解决方法,都分享给大家。
# 图片格式转换, jpg转png # 方法① from pil import image img = image.open('test.jpg') img.save('test1.png') # 方法② from cv2 import imread, imwrite image = imread(test.jpg, 1) imwrite(test2.png, image)
2、pdf加密和解密如果你有100个或更多的pdf文件需要加密,手动进行加密肯定是不可行的,极其浪费时间。
使用python的pikepdf模块,即可对文件进行加密,写一个循环就能进行批量加密文档。
# pdf加密 import pikepdf pdf = pikepdf.open(test.pdf) pdf.save('encrypt.pdf', encryption=pikepdf.encryption(owner=your_password, user=your_password, r=4)) pdf.close()
有加密那么便会有解密,代码如下。
# pdf解密 import pikepdf pdf = pikepdf.open(encrypt.pdf,password='your_password') pdf.save(decrypt.pdf) pdf.close()
3、获取电脑的配置信息很多小伙伴可能会使用鲁大师来看自己的电脑配置,这样还需要下载一个软件。
使用python的wmi模块,便可以轻松查看你的电脑信息。
# 获取计算机信息 import wmi def 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) / 1048576 print(f'操作系统: {os_name}') print(f'cpu: {processor.name}') print(f'内存: {ram} gb') print(f'显卡: {gpu.name}') print(n计算机信息如上 ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑) system_spec()
就以小f自己的电脑为例,运行代码就能看到配置。
4、解压文件使用zipfile模块进行文件解压,同理也可以对文件进行压缩。
# 解压文件 from zipfile import zipfile unzip = zipfile(file.zip, r) unzip.extractall(output folder)
5、excel工作表合并帮助你将excel工作表合并到一张表上,表内容如下图。
6张表,其余表的内容和第一张表都一样。
设置表格数量为5,将会合并前5张表的内容。
import pandas as pd # 文件名 filename = test.xlsx # 表格数量 t_sheets = 5 df = [] 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.divide(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 sleep from pyspectator.processor import cpu cpu = cpu(monitoring_latency=1) with cpu: while true: print(f'temp: {cpu.temperature} °c') sleep(2)
8、提取pdf表格有的时候,我们需要从pdf中提取表格数据。
一时间你可能会先想到手工整理,但是当工作量特别大,手工可能就比较费劲。
然后你可能会想到一些软件和网络工具来提取 pdf 表格。
下面这个简单的脚本将帮助你在一秒钟内完成相同的操作。
# 方法① import camelot tables = camelot.read_pdf(tables.pdf) print(tables) tables.export(extracted.csv, f=csv, compress=true) # 方法②, 需要安装java8 import tabula tabula.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 mss with mss() as screenshot: screenshot.shot(output='scr.png') # 方法② import pil.imagegrab scr = pil.imagegrab.grab() scr.save(scr.png)
10、拼写检查器这个python脚本可以进行拼写检查,当然只对英文有效,毕竟中文博大精深呐。
# 拼写检查 # 方法① import textblob text = mussage print(original text: + str(text)) checked = textblob.textblob(text) print(corrected text: + str(checked.correct())) # 方法② import autocorrect spell = autocorrect.speller(lang='en') # 以英语为例 print(spell('cmputr')) print(spell('watr')) print(spell('survice'))
以上就是十个有趣的 python 高级脚本,建议收藏!的详细内容。