Heim >Backend-Entwicklung >Python-Tutorial >Teilen Sie zehn superpraktische Python-Automatisierungsskripte, die mit halbem Aufwand das doppelte Ergebnis erzielen
Bei der täglichen Arbeit und beim Lernen stoßen wir immer wieder auf verschiedene Probleme, von denen viele immer wieder einfache und wiederholte Vorgänge sind. Sie können auch Python-Skripte verwenden, um die Verarbeitung zu automatisieren. Heute werde ich Ihnen zehn erweiterte Python-Skripte vorstellen, die uns helfen Reduzieren Sie unnötige Zeitverschwendung und verbessern Sie die Effizienz bei Arbeit und Studium.
Es gibt viele Codes zum Hinzufügen von Wasserzeichen zu Fotos. Die folgende ist möglicherweise die einfachste Form:
from PIL import Image from PIL import ImageFont from PIL import ImageDraw def watermark_Image(img_path,output_path, text, pos): img = Image.open(img_path) drawing = ImageDraw.Draw(img) black = (10, 5, 12) drawing.text(pos, text, fill=black) img.show() img.save(output_path) img = '2.png' watermark_Image(img, 'watermarked_2.jpg','Python爱好者集中营', pos=(10, 10))
Oft müssen wir das überprüfen Ähnlichkeit zwischen den beiden Dateien, wie viele Ähnlichkeiten es gibt, vielleicht kann die folgende Skriptdatei nützlich sein:
from difflib import SequenceMatcher def file_similarity_checker(f1, f2): with open(f1, errors="ignore") as file1, open(f2, errors="ignore") as file2: f1_data = file1.read() f2_data = file2.read() checking = SequenceMatcher(None, f1_data, f2_data).ratio() print(f"These files are {checking*100} % similar") file_1 = "路径1" file_2 = "路径2" file_similarity_checker(file_1, file_2)
Manchmal sind die Dateien in unseren Händen Der Inhalt ist sehr wichtig und Vertraulich. Der Code lautet wie folgt:
rrreeWir generieren einen Schlüssel und verschlüsseln diesen dann natürlich beim Entschlüsseln der Datei Der Entschlüsselungscode lautet wie folgt:
from cryptography.fernet import Fernet def encrypt(filename, key): fernet = Fernet(key) with open(filename, 'rb') as file: original = file.read() encrypted = fernet.encrypt(original) with open(filename, 'wb') as enc_file: enc_file.write(encrypted) key = Fernet.generate_key() filename = "file.txt" encrypt(filename, key)
Im obigen Skript ist der Schlüssel eine zufällig generierte Zufallszahl. Der Code lautet natürlich auch wie folgt:
def decrypt(filename, key): fernet = Fernet(key) with open(filename, 'rb') as enc_file: encrypted = enc_file.read() decrypted = fernet.decrypt(encrypted) with open(filename, 'wb') as dec_file: dec_file.write(decrypted) decrypt(filename, key)
Manchmal müssen wir Fotos in das PDF-Format konvertieren oder Fotos nacheinander zu PDF-Dateien hinzufügen. Der Code lautet wie folgt:
import pyAesCrypt def Encryption(input_file_path, output_file_path, key): pyAesCrypt.encryptFile(input_file_path, output_file_path, key) print("File has been decrypted") def Decryption(input_file_path, output_file_path, key): pyAesCrypt.decryptFile(input_file_path, output_file_path, key) print("File has been decrypted")
Wenn wir Fotos ändern möchten und Breite des Fotos unterschiedlich sind, kann der folgende Code helfen. Der Code lautet wie folgt:
import os import img2pdf with open("Output.pdf", "wb") as file: file.write(img2pdf.convert([i for i in os.listdir('文件路径') if i.endswith(".jpg")]))
Zusätzlich zum Ändern der Länge und Breite des Fotos oben haben wir auch andere Vorgänge am B. den Inhalt des Fotos verwischen:
from PIL import Image import os def img_resize(file, h, w): img = Image.open(file) Resize = img.resize((h,w), Image.ANTIALIAS) Resize.save('resized.jpg', 'JPEG', quality=90) img_resize("文件路径", 400, 200)
Foto um 90 Grad drehen:
img = Image.open('1.jpg') blur = img.filter(ImageFilter.BLUR) blur.save('output.jpg')
Foto schärfen:
img = Image.open('1.jpg') rotate = img.rotate(90) rotate.save('output.jpg')
Foto symmetrisch nach links und rechts spiegeln, der Code lautet wie folgt:
img = Image.open('1.jpg') sharp = img.filter(ImageFilter.SHARPEN) sharp.save('output.jpg')
Prozess das Foto in Graustufen:
img = Image.open('1.jpg') transpose = img.transpose(Image.FLIP_LEFT_RIGHT) transpose.save('output.jpg')
Natürlich müssen wir die abhängigen Module im Voraus herunterladen, bevor wir mit dem Testen der Netzwerkgeschwindigkeit beginnen
img = Image.open('1.jpg') convert = img.convert('L') convert.save('output.jpg')
Dann beginnen wir mit dem Testen der Netzwerkgeschwindigkeit:
pip install speedtest-cli
Zum Beispiel möchten wir den Wechselkurs zwischen US-Dollar und britischen Pfund sehen. Wie viele Pfund können von 100 US-Dollar umgerechnet werden? Der Code lautet wie folgt:
from speedtest import Speedtest def Testing_Speed(net): download = net.download() upload = net.upload() print(f'下载速度: {download/(1024*1024)} Mbps') print(f'上传速度: {upload/(1024*1024)} Mbps') print("开始网速的测试 ...") net = Speedtest() Testing_Speed(net)
Oder wir wollen Um die Wechselkursumrechnung zwischen US-Dollar und Euro zu sehen, wie viele Euro in 100 US-Dollar umgerechnet werden können:
# 导入模块 from currency_converter import CurrencyConverter from datetime import date # 案例一 conv = CurrencyConverter() c = conv.convert(100, 'USD', 'GBP') print(round(c, 2)) # 保留两位小数
Es umfasst die Generierung von QR-Code und die Analyse des QR-Codes. Der Code ist wie folgt :
# 案例二 c = conv.convert(100, 'USD', 'EUR', date=date(2022, 3, 30)) print(round(c, 2)) # 44.1
Schauen wir uns die Analyse des QR-Codes an. Der Code lautet wie folgt:
import qrcode from PIL import Image from pyzbar.pyzbar import decode def Generate_qrcode(data): qr = qrcode.QRCode( version=1, error_correction=qrcode.constants.ERROR_CORRECT_L, box_size=10, border=4,) qr.add_data(data) qr.make(fit=True) image = qr.make_image(fill_color="black", back_color="white") image.save("qrcode.png") Generate_qrcode("Python爱好者集中营 欣一")
def Decode_Qrcode(file_name): result = decode(Image.open(file_name)) print("Data:", result[0][0].decode()) Decode_Qrcode("文件名")
Das obige ist der detaillierte Inhalt vonTeilen Sie zehn superpraktische Python-Automatisierungsskripte, die mit halbem Aufwand das doppelte Ergebnis erzielen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!