Rumah > Artikel > pembangunan bahagian belakang > Sepuluh skrip Python lanjutan yang menarik, disyorkan untuk koleksi!
Helo semua, saya baru.
Dalam kerja seharian, kita akan sentiasa menghadapi pelbagai masalah.
Banyak masalah ini boleh diselesaikan menggunakan beberapa kod Python mudah. Sebagai contoh, tidak lama dahulu, bos Fudan menggunakan 130 baris kod Python untuk melengkapkan statistik asid nukleik, yang telah meningkatkan kecekapan dan menjimatkan banyak masa.
Hari ini, Brother Rookie akan mengajar anda 10 program skrip Python. Walaupun ringkas, ia masih cukup berguna. Mereka yang berminat boleh melaksanakannya sendiri dan mencari teknik yang akan membantu mereka.
Penukaran format imej Pada masa lalu, perkara pertama yang mungkin difikirkan oleh Brother J ialah perisian [Format Factory].
Kini, menulis skrip Python boleh melengkapkan penukaran pelbagai format imej Di sini, kami mengambil penukaran jpg ke png sebagai contoh.
Terdapat dua penyelesaian, kedua-duanya dikongsi dengan semua orang.
# 图片格式转换, 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)
Jika anda mempunyai 100 atau lebih fail PDF yang perlu disulitkan, lakukannya. secara manual Penyulitan pastinya tidak boleh dilaksanakan dan sangat memakan masa.
Gunakan modul pikepdf Python untuk menyulitkan fail dan tulis gelung untuk menyulitkan dokumen dalam kelompok.
# 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()
Jika ada penyulitan, akan ada penyahsulitan Kodnya adalah seperti berikut.
# PDF解密 import pikepdf pdf = pikepdf.open("encrypt.pdf",password='your_password') pdf.save("decrypt.pdf") pdf.close()
Ramai rakan boleh menggunakan Master Lu untuk melihat konfigurasi komputer mereka, yang memerlukan muat turun perisian.
Menggunakan modul WMI Python, anda boleh melihat maklumat komputer anda dengan mudah.
# 获取计算机信息 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()
Ambil komputer Brother J sendiri sebagai contoh Anda boleh melihat konfigurasi dengan menjalankan kod.
Gunakan modul fail zip untuk menyahmampat fail Dengan cara yang sama, fail juga boleh dimampat.
# 解压文件 from zipfile import ZipFile unzip = ZipFile("file.zip", "r") unzip.extractall("output Folder")
membantu anda menggabungkan lembaran kerja Excel ke dalam satu jadual Kandungan jadual adalah seperti yang ditunjukkan di bawah.
6 jadual, kandungan jadual yang tinggal adalah sama dengan jadual pertama.
Tetapkan bilangan jadual kepada 5, dan kandungan 5 jadual pertama akan digabungkan.
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)
Hasilnya adalah seperti berikut.
agak serupa dengan penukaran format imej sebelumnya, iaitu memproses imej.
Pada masa lalu, anda mungkin pernah menggunakan Meitu Xiuxiu, tetapi kini ia mungkin penapis Douyin.
Malah, menggunakan OpenCV Python, anda boleh mencapai banyak kesan yang anda inginkan dengan cepat.
# 图像转换 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()
Gambar asal adalah seperti berikut.
Lakaran adalah seperti berikut, ia agak bagus.
Dengan skrip Python ini, anda tidak memerlukan sebarang perisian untuk mengetahui suhu anda 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)
Kadangkala, kita perlu mengekstrak data jadual daripada PDF.
Pada mulanya anda mungkin memikirkan kemasan manual, tetapi apabila beban kerja sangat berat, kerja manual mungkin lebih menyusahkan.
Kemudian anda mungkin memikirkan beberapa perisian dan alatan web untuk mengekstrak jadual PDF.
Skrip mudah di bawah akan membantu anda melakukan perkara yang sama hanya dalam satu saat.
# 方法① 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")
Kandungan dokumen PDF adalah seperti berikut, termasuk jadual.
Kandungan fail CSV yang diekstrak adalah seperti berikut.
Skrip ini hanya akan mengambil tangkapan skrin tanpa menggunakan sebarang perisian tangkapan skrin.
Dalam kod di bawah, saya menunjukkan kepada anda dua kaedah untuk mengambil tangkapan skrin dalam 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")
Skrip Python ini sudah tentu, ia hanya berfungsi dalam bahasa Inggeris.
# 拼写检查 # 方法① 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'))
Atas ialah kandungan terperinci Sepuluh skrip Python lanjutan yang menarik, disyorkan untuk koleksi!. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!