Hướng dẫn tạo ứng dụng tạo mật khẩu ngẫu nhiên với Python từ A-Z

Đăng ngày: 20/06/2026 • Tác giả: Quản trị viên
Hướng dẫn tạo ứng dụng tạo mật khẩu ngẫu nhiên với Python từ A-Z

Hướng dẫn tạo ứng dụng tạo mật khẩu ngẫu nhiên với Python từ A-Z

Giới thiệu

Trong bài viết này, chúng ta sẽ xây dựng một trình tạo mật khẩu ngẫu nhiên bằng Python sử dụng Tkinter để tạo giao diện. Ứng dụng này cho phép người dùng chọn độ dài và các tùy chọn như chữ hoa, chữ thường, số và ký tự đặc biệt.

1. Cấu trúc thư mục dự án

Chúng ta sẽ tổ chức dự án thành các tệp sau:

PasswordGenerator/
│── main.py          # Tệp chính để chạy ứng dụng
│── gui.py           # Xây dựng giao diện bằng Tkinter
│── generator.py     # Xử lý việc tạo mật khẩu

2. Xây dựng chức năng tạo mật khẩu

Tạo tệp generator.py để xử lý logic tạo mật khẩu.

# generator.py
import random
import string

def generate_password(length=12, use_uppercase=True, use_digits=True, use_special=True):
    characters = string.ascii_lowercase
    if use_uppercase:
        characters += string.ascii_uppercase
    if use_digits:
        characters += string.digits
    if use_special:
        characters += string.punctuation
    
    return ''.join(random.choice(characters) for _ in range(length))

3. Thiết kế giao diện với Tkinter

Tạo tệp gui.py để xây dựng giao diện.

# gui.py
import tkinter as tk
from tkinter import messagebox
import generator

def generate():
    length = int(length_entry.get())
    password = generator.generate_password(
        length=length,
        use_uppercase=uppercase_var.get(),
        use_digits=digits_var.get(),
        use_special=special_var.get()
    )
    result_var.set(password)

def create_gui(root):
    global length_entry, uppercase_var, digits_var, special_var, result_var
    
    tk.Label(root, text="Độ dài mật khẩu:").pack()
    length_entry = tk.Entry(root)
    length_entry.pack()
    length_entry.insert(0, "12")
    
    uppercase_var = tk.BooleanVar(value=True)
    digits_var = tk.BooleanVar(value=True)
    special_var = tk.BooleanVar(value=True)
    
    tk.Checkbutton(root, text="Chữ hoa", variable=uppercase_var).pack()
    tk.Checkbutton(root, text="Số", variable=digits_var).pack()
    tk.Checkbutton(root, text="Ký tự đặc biệt", variable=special_var).pack()
    
    tk.Button(root, text="Tạo mật khẩu", command=generate).pack()
    
    result_var = tk.StringVar()
    tk.Entry(root, textvariable=result_var, state='readonly', width=30).pack()

4. Chạy ứng dụng

Tạo tệp main.py để khởi chạy ứng dụng.

# main.py
import tkinter as tk
import gui

root = tk.Tk()
root.title("Trình tạo mật khẩu")
gui.create_gui(root)
root.mainloop()

Kết luận

Vậy là chúng ta đã hoàn thành một trình tạo mật khẩu ngẫu nhiên với Python. Bạn có thể mở rộng ứng dụng bằng cách thêm các tính năng như lưu mật khẩu vào file, copy mật khẩu vào clipboard, hoặc tích hợp kiểm tra độ mạnh của mật khẩu để làm ứng dụng hữu ích hơn!

Bài viết liên quan