Sửa lỗi chính tả của bạn bằng Python
Công cụ kiểm tra chính tả là một công cụ quan trọng giúp cải thiện độ chính xác của thông tin liên lạc bằng văn bản của bạn. Khi viết, bạn có thể dễ dàng bỏ qua lỗi chính tả hoặc lỗi chính tả mà trình kiểm tra chính tả có thể dễ dàng phát hiện cho bạn. Điều này không chỉ tiết kiệm thời gian và công sức mà còn giúp bạn tránh được những sai lầm đáng xấu hổ.
Bạn có thể dễ dàng phát triển một ứng dụng GUI trong đó bạn có thể nhập một từ và sửa lỗi chính tả của từ đó bằng cách sử dụng mô-đun Tkinter của Python. Tkinter cung cấp các tiện ích có thể tùy chỉnh tuyệt vời giúp việc phát triển trở nên dễ dàng và thú vị.
Mục Lục
Tkinter và Mô-đun kiểm tra chính tả
Thư viện GUI mặc định cho Python được gọi là Tkinter. Bạn có thể tạo các chương trình GUI đáng kinh ngạc với Tkinter. Bạn có thể tạo một máy tính đơn giản, ứng dụng danh sách việc cần làm, trình soạn thảo văn bản, trình phát nhạc hoặc trò chơi đố vui. Bạn có thể sử dụng Python và Tkinter để tạo các ứng dụng máy tính để bàn đơn giản và áp dụng kiến thức của mình vào thực tế đồng thời nâng cao kỹ năng lập trình của mình.
Để cài đặt Tkinter trong hệ thống của bạn, hãy mở terminal và thực hiện:
pip install tkinter
Một mô-đun khác, bạn sẽ sử dụng rất nhiều trong dự án này là mô-đun Trình kiểm tra chính tả. Công việc của Peter Norvig tạo thành cơ sở của mô-đun này. Nó sử dụng thuật toán Khoảng cách Levenshtein để tìm các hoán vị trong danh sách tần suất từ. Sau đó, nó giả định rằng tần suất xuất hiện của từ càng lớn thì khả năng viết đúng chính tả càng cao.
Để cài đặt mô-đun trình kiểm tra chính tả, hãy thực hiện lệnh sau:
pip install pyspellchecker
Cách xây dựng ứng dụng sửa lỗi chính tả bằng Python
Làm theo các bước sau để xây dựng trình sửa lỗi chính tả GUI bằng Python.
Mã ví dụ này có sẵn trong kho lưu trữ GitHub này và bạn được sử dụng miễn phí theo giấy phép MIT.
Triển khai chức năng và logic cơ bản
Bước đầu tiên là nhập Tkinter và lớp SpellChecker từ mô-đun trình kiểm tra chính tả. Tạo một thể hiện của Công cụ kiểm tra chính tả và lưu trữ nó trong một biến có tên là bộ chỉnh sửa.
from tkinter import *
from spellchecker import SpellCheckercorrector = SpellChecker()
Xác định một chức năng, quet sạch tât cả(), thao tác này sẽ xóa sạch dữ liệu hiển thị trên trường mục nhập. Để đạt được điều này, hãy sử dụng xóa bỏ() chức năng xóa tất cả các mục từ 0 đến chỉ mục cuối cùng trên cả hai trường nhập, từ1_field và từ2_field.
def clearAll():
word1_field.delete(0, END)
word2_field.delete(0, END)
Xác định một chức năng khác có tên điều chỉnh() đọc một từ trong trường đầu vào đầu tiên và thêm từ đúng chính tả của từ đó vào trường thứ hai. Sử dụng được() trên word1_field để lấy giá trị của nó dưới dạng chuỗi. Chuyển từ đã truy xuất này tới điều chỉnh() chức năng, sau đó xóa tiện ích word2_field trước khi sử dụng chèn() phương pháp chèn từ đã sửa vào đầu trường.
def correction():
input_word = word1_field.get()
corrected_word = corrector.correction(input_word)
word2_field.delete(0, END)
word2_field.insert(0, corrected_word)
Tạo giao diện người dùng
Khởi tạo phiên bản Tkinter và hiển thị cửa sổ gốc. Sử dụng cấu hình() và đặt màu nền của cửa sổ thành màu bạn muốn, chẳng hạn như aqua. Đặt kích thước của cửa sổ rộng 900 pixel và cao 450 pixel bằng cách sử dụng hình học() phương pháp. Cũng đặt một tiêu đề cửa sổ thích hợp.
root = Tk()
root.configure(background='aqua')
root.geometry("900x450")
root.title("Spellings Corrector")
Sử dụng tiện ích Nhãn để hiển thị thông tin hữu ích về ứng dụng. Hàm tạo chấp nhận cửa sổ mẹ mà bạn muốn đặt nó vào, văn bản sẽ hiển thị, màu phông chữ, màu nền và cỡ chữ.
headlabel = Label(root, text='Spellings Corrector', fg='white', bg="blue", font=10)
label1 = Label(root, text="Input Word", fg='black', bg='violet', font=10)
label2 = Label(root, text="Corrected Word", fg='black', bg='violet', font=10)
Grid là trình quản lý hình học tổ chức các widget trong bảng hai chiều. Bạn có thể hình dung bố cục gồm năm hàng và hai cột.
Đặt mỗi nhãn vào một hàng và cột thích hợp, hãy nhớ rằng chỉ mục của chúng bắt đầu từ số không. Bạn có thể sử dụng phần đệm để căn chỉnh các vật dụng của mình; trong ví dụ này, nhãn2 có phần đệm 100 pixel dọc theo trục X.
headlabel.grid(row=0, column=1)
label1.grid(row=1, column=0)
label2.grid(row=3, column=0, padx=100)
Xác định hai tiện ích mục nhập, một cho đầu vào và một cho hiệu chỉnh. Đặt kích thước phông chữ của cả hai tiện ích con thành 10. Đặt tiện ích nhập sai chính tả ở hàng thứ hai và cột thứ hai, với phần đệm là 100 dọc theo trục X và 50 dọc theo trục Y. Thực hiện tương tự cho tiện ích mục nhập đã sửa, nhưng đặt nó ở hàng thứ tư.
word1_field = Entry(font=10)
word2_field = Entry(font=10)
word1_field.grid(row=1, column=1, padx=100, pady=50)
word2_field.grid(row=3, column=1, padx=100, pady=50)
Sử dụng Cái nút() widget để tạo hai nút: Điều chỉnh Và Thông thoáng. Chuyển vào cửa sổ gốc với tư cách là chủ sở hữu của chúng, nhãn của nút là một chuỗi, màu nền là Cam, màu phông chữ là đen và cỡ chữ là 8. Bạn có thể cung cấp tên hàm tại đây bằng cách sử dụng chỉ huy tranh luận; điều này sẽ chạy khi người dùng nhấp vào nút.
Đặt mỗi nút trong một hàng và cột thích hợp.
button1 = Button(root, text="Correction", bg="orange", fg="black", font=8, command=correction)
button1.grid(row=2, column=1),
button2 = Button(root, text="Clear", bg="orange", fg="black", font=8, command=clearAll)
button2.grid(row=4, column=1)
Các vòng lặp chính() hàm yêu cầu Python chạy vòng lặp sự kiện Tkinter và lắng nghe các sự kiện (chẳng hạn như nhấn nút) cho đến khi bạn đóng cửa sổ:
root.mainloop()
Đặt tất cả mã này lại với nhau và chạy chương trình để xem hoạt động của ứng dụng sửa lỗi chính tả của bạn.
Đầu ra của ứng dụng sửa lỗi chính tả
Khi chạy chương trình này, bạn sẽ thấy một cửa sổ nhỏ có nền màu xanh lam. Nhập một từ sai chính tả vào trường nhập đầu tiên, sau đó nhấn nút Điều chỉnh cái nút. Bạn sẽ thấy cách viết đúng xuất hiện trong trường văn bản thứ hai. Bạn có thể dùng Thông thoáng để đặt lại cả hai trường văn bản.
Khung GUI Python dành cho nhà phát triển
Khung GUI Python là một nguồn tài nguyên tuyệt vời cho các nhà phát triển. Bạn có thể nhanh chóng xây dựng một ứng dụng với GUI hấp dẫn, hữu ích. Một số khung bạn có thể sử dụng, ngoài Tkinter, bao gồm nhà thiết kế Qt, Kivy, Toga và BeeWare. Sử dụng các khung này, bạn có thể xây dựng mọi thứ từ các ứng dụng tiện ích nhỏ đến các sản phẩm đầy đủ chức năng.
Với Python, bạn sẽ có thêm lợi thế. Vì các khung GUI của Python hỗ trợ phát triển đa nền tảng, bạn có thể sử dụng cùng một mã trên các hệ điều hành khác nhau. Với tất cả các tính năng này và nhiều tính năng khác, Python đã nổi lên như một ngôn ngữ lý tưởng để tạo giao diện người dùng đồ họa với độ tin cậy cao hơn và giảm chi phí.