每日视点!Python-master,实用Python脚本合集!
2022-06-12 08:04:43来源:Python大数据分析
Python这门语言很适合用来写些实用的小脚本,跑个自动化、爬虫、算法什么的,非常方便。
这也是很多人学习Python的乐趣所在,可能只需要花个礼拜入门语法,就能用第三方库去解决实际问题。
我在Github上就看到过不少Python代码的项目,几十行代码就能实现一个场景功能,非常实用。
比方说仓库Python-master里就有很多不错的实用Python脚本,举几个简单例子:
1. 创建二维码import pyqrcodeimport pngfrom pyqrcode import QRCode# Text which is to be converted to QR codeprint("Enter text to convert")s = input(": ")# Name of QR code png fileprint("Enter image name to save")n = input(": ")# Adding extension as .pnfd = n + ".png"# Creating QR codeurl = pyqrcode.create(s)# Saving QR code as a png fileurl.show()url.png(d, scale=6)2. 从图片中截取文字
# extract text from a img and its coordinates using the pytesseract moduleimport cv2import pytesseract# You need to add tesseract binary dependency to system variable for this to workimg = cv2.imread("img.png")# We need to convert the img into RGB formatimg = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)hI, wI, k = img.shapeprint(pytesseract.image_to_string(img))boxes = pytesseract.image_to_boxes(img)for b in boxes.splitlines(): b = b.split(" ") x, y, w, h = int(b[1]), int(b[2]), int(b[3]), int(b[4]) cv2.rectangle(img, (x, hI - y), (w, hI - h), (0, 0, 255), 0.2)cv2.imshow("img", img)cv2.waitKey(0)3. 判断闰年
def is_leap(year): leap = False if year % 4 == 0: leap = True if year % 100 == 0: leap = False if year % 400 == 0: leap = True return leapyear = int(input("Enter the year here: "))print(is_leap(year))4. 简易日历
from tkinter import *import calendarroot = Tk()# root.geometry("400x300")root.title("Calendar")# Functiondef text(): month_int = int(month.get()) year_int = int(year.get()) cal = calendar.month(year_int, month_int) textfield.delete(0.0, END) textfield.insert(INSERT, cal)# Creating Labelslabel1 = Label(root, text="Month:")label1.grid(row=0, column=0)label2 = Label(root, text="Year:")label2.grid(row=0, column=1)# Creating spinboxmonth = Spinbox(root, from_=1, to=12, width=8)month.grid(row=1, column=0, padx=5)year = Spinbox(root, from_=2000, to=2100, width=10)year.grid(row=1, column=1, padx=10)# Creating Buttonbutton = Button(root, text="Go", command=text)button.grid(row=1, column=2, padx=10)# Creating Textfieldtextfield = Text(root, width=25, height=10, fg="red")textfield.grid(row=2, columnspan=2)root.mainloop()5. 打印图片分辨率
def jpeg_res(filename): """"This function prints the resolution of the jpeg image file passed into it""" # open image for reading in binary mode with open(filename,"rb") as img_file: # height of image (in 2 bytes) is at 164th position img_file.seek(163) # read the 2 bytes a = img_file.read(2) # calculate height height = (a[0] << 8) + a[1] # next 2 bytes is width a = img_file.read(2) # calculate width width = (a[0] << 8) + a[1] print("The resolution of the image is",width,"x",height)jpeg_res("img1.jpg")
这个项目只是作者平时工作用到的一些小脚本,可能也会帮助到你。作者虽然不是程序员,但他这种用代码解决问题的习惯会极大的提升效率,也会迸发出更多的创新思维。我觉得这样的代码每个人都可以写出来,只要慢慢积累多练习就可以。
(资料图)