在日常的工作中,咱们总会面临到各式各样的问题。
其中不少的问题,应用一些简略的 Python 代码就能解决。
比方不久前的复旦大佬,用 130 行 Python 代码硬核搞定核酸统计,大大晋升了效率,节俭了不少工夫。
明天就带大家学习一下 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 编程学习圈 ,每日干货分享,发送“J”还可支付大量学习材料。或是返回编程学习网,理解更多编程技术常识。