搜尋
首頁後端開發Python教學十個有趣的Python高級腳本,建議收藏!

十個有趣的Python高級腳本,建議收藏!

大家好,我是菜鳥哥。

在日常的工作中,我們總是會面臨到各式各樣的問題。

其中不少的問題,使用一些簡單的Python程式碼就能解決。例如不久前的復旦大佬,用130行Python程式碼硬派搞定核酸統計,大大提升了效率,節省了不少時間。

今天,菜鳥哥就帶大家學習10個Python腳本程式。雖然簡單,不過還蠻有用的。有興趣的可以自己去實現,找到對自己有幫助的技巧。

1、Jpg轉Png

圖片格式轉換,以前J哥可能第一時間想到的是【格式工廠】這個軟體。

如今寫一個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()

就以J哥自己的電腦為例,運行程式碼就能看到設定。

十個有趣的Python高級腳本,建議收藏!

4、解壓縮檔案

#使用zipfile模組進行檔案解壓縮,同理也可以壓縮檔案。

# 解压文件
from zipfile import ZipFile
unzip = ZipFile("file.zip", "r")
unzip.extractall("output Folder")

5、Excel工作表合併

幫助你將Excel工作表合併到一張表上,表格內容如下圖。

十個有趣的Python高級腳本,建議收藏!

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)

結果如下。

十個有趣的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()

原圖如下。

十個有趣的Python高級腳本,建議收藏!

素描圖如下,還蠻好看的。

十個有趣的Python高級腳本,建議收藏!

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文件的內容如下,包含了一個表格。

十個有趣的Python高級腳本,建議收藏!

擷取到的CSV檔案內容如下。

十個有趣的Python高級腳本,建議收藏!

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高級腳本,建議收藏!的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文轉載於:51CTO.COM。如有侵權,請聯絡admin@php.cn刪除
Python中的合併列表:選擇正確的方法Python中的合併列表:選擇正確的方法May 14, 2025 am 12:11 AM

Tomergelistsinpython,YouCanusethe操作員,estextMethod,ListComprehension,Oritertools

如何在Python 3中加入兩個列表?如何在Python 3中加入兩個列表?May 14, 2025 am 12:09 AM

在Python3中,可以通過多種方法連接兩個列表:1)使用 運算符,適用於小列表,但對大列表效率低;2)使用extend方法,適用於大列表,內存效率高,但會修改原列表;3)使用*運算符,適用於合併多個列表,不修改原列表;4)使用itertools.chain,適用於大數據集,內存效率高。

Python串聯列表字符串Python串聯列表字符串May 14, 2025 am 12:08 AM

使用join()方法是Python中從列表連接字符串最有效的方法。 1)使用join()方法高效且易讀。 2)循環使用 運算符對大列表效率低。 3)列表推導式與join()結合適用於需要轉換的場景。 4)reduce()方法適用於其他類型歸約,但對字符串連接效率低。完整句子結束。

Python執行,那是什麼?Python執行,那是什麼?May 14, 2025 am 12:06 AM

pythonexecutionistheprocessoftransformingpypythoncodeintoExecutablestructions.1)InternterPreterReadSthecode,ConvertingTingitIntObyTecode,whepythonvirtualmachine(pvm)theglobalinterpreterpreterpreterpreterlock(gil)the thepythonvirtualmachine(pvm)

Python:關鍵功能是什麼Python:關鍵功能是什麼May 14, 2025 am 12:02 AM

Python的關鍵特性包括:1.語法簡潔易懂,適合初學者;2.動態類型系統,提高開發速度;3.豐富的標準庫,支持多種任務;4.強大的社區和生態系統,提供廣泛支持;5.解釋性,適合腳本和快速原型開發;6.多範式支持,適用於各種編程風格。

Python:編譯器還是解釋器?Python:編譯器還是解釋器?May 13, 2025 am 12:10 AM

Python是解釋型語言,但也包含編譯過程。 1)Python代碼先編譯成字節碼。 2)字節碼由Python虛擬機解釋執行。 3)這種混合機制使Python既靈活又高效,但執行速度不如完全編譯型語言。

python用於循環與循環時:何時使用哪個?python用於循環與循環時:何時使用哪個?May 13, 2025 am 12:07 AM

UseeAforloopWheniteratingOveraseQuenceOrforAspecificnumberoftimes; useAwhiLeLoopWhenconTinuingUntilAcIntiment.forloopsareIdealForkNownsences,而WhileLeleLeleLeleLeleLoopSituationSituationsItuationsItuationSuationSituationswithUndEtermentersitations。

Python循環:最常見的錯誤Python循環:最常見的錯誤May 13, 2025 am 12:07 AM

pythonloopscanleadtoerrorslikeinfiniteloops,modifyingListsDuringteritation,逐個偏置,零indexingissues,andnestedloopineflinefficiencies

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

SublimeText3 英文版

SublimeText3 英文版

推薦:為Win版本,支援程式碼提示!

PhpStorm Mac 版本

PhpStorm Mac 版本

最新(2018.2.1 )專業的PHP整合開發工具

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

將Eclipse與SAP NetWeaver應用伺服器整合。

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

WebStorm Mac版

WebStorm Mac版

好用的JavaScript開發工具