大白baymax 发表于 2023-7-25 17:01

【源码+打包】字符串转换MD5小工具

因工作需要,写了这么一个小工具,可以把字符串转换成MD5的小工具。
话不多说了,直接上代码:


import hashlib
import tkinter as tk
def convert_to_md5():
    input_str = input_text.get()
    md5_hash = hashlib.md5(input_str.encode()).hexdigest()
    output_text.delete(1.0, tk.END)
    output_text.insert(tk.END, md5_hash)
# 创建GUI窗口
window = tk.Tk()
window.title("字符串转换MD5小工具")
window.geometry("500x300+100+200")
# 创建输入框
input_label = tk.Label(window, text="输入字符串:")
input_label.pack()
input_text = tk.Entry(window)
input_text.pack()
# 创建转换按钮
convert_button = tk.Button(window, text="转换为MD5", command=convert_to_md5)
convert_button.pack()
# 创建输出框
output_label = tk.Label(window, text="MD5值:")
output_label.pack()
output_text = tk.Text(window, height=5, width=30)
output_text.pack()
window.mainloop()

上一张运行图吧。



下面是打包好的下载连接:
链接:https://pan.baidu.com/s/1WYUlPNO0xJZn2MDfV6cMOg
提取码:e946


高手们轻喷。

如果有违规的地方还烦请版主删帖,谢谢。

hrh123 发表于 2023-7-25 18:19

本帖最后由 hrh123 于 2023-7-25 18:24 编辑


帮楼主改了下gui,不知楼主中不中意呢?
```python
import contextlib
import hashlib
import sys
import tkinter as tk

copyright_notice = "by 大白baymax,hrh123 from www.52pojie.cn"


def convert_to_md5(input_str):
    md5_hash = hashlib.md5(input_str.encode()).hexdigest()
    sys.stdout.write("\n{md5_hash}".format(md5_hash=md5_hash))


class GUI(tk.Frame):
    def __init__(self, master=None):
      super().__init__(master)
      self.master = master
      self.master.title("字符串转换md5小工具")
      self.pack()
      self.create_widgets()

    def create_widgets(self):
      self.sub_frame = tk.Frame(self)
      self.text = tk.Text(self.sub_frame)
      self.text.insert(tk.INSERT, copyright_notice)
      self.scroll = tk.Scrollbar(self.sub_frame)
      self.text.config(yscrollcommand=self.scroll.set)
      self.scroll.config(command=self.text.yview)
      self.text.grid(row=0, column=0, sticky="nsew")
      self.scroll.grid(row=0, column=1, sticky="ns")
      self.sub_frame.grid(row=0, column=0, columnspan=2, sticky="nsew")
      self.label = tk.Label(self, text="Type in the STRING,press <Enter> to start")
      self.label.grid(row=1)
      self.str_entry = tk.Entry(self)
      self.str_entry.grid(row=2)
      self.str_entry.bind(
            "<Return>", lambda event: convert_to_md5(self.str_entry.get())
      )


class PrintToText:
    def __init__(self, text):
      self.text = text

    def write(self, s):
      self.text.insert(tk.END, s)
      self.text.see(tk.END)
      self.text.update()


def start_gui():
    root = tk.Tk()
    gui = GUI(master=root)
    ptt = PrintToText(gui.text)
    with contextlib.redirect_stdout(ptt), contextlib.redirect_stderr(ptt):
      gui.master.mainloop()


start_gui()
```

sailor0712 发表于 2023-7-25 17:30

学习一下

Yellow0526 发表于 2023-7-25 17:55

学习一下大佬

Tan95 发表于 2023-7-25 18:55

收藏。。。。

鹿鸣 发表于 2023-7-25 20:34

学习了,就是这个ui还可以再漂亮点

lsgcptbtptp 发表于 2023-7-25 21:26

66666,先收藏

PPYLL 发表于 2023-7-25 21:46

收藏一波

无敌小儿 发表于 2023-7-26 08:08

hrh123 发表于 2023-7-25 18:19
帮楼主改了下gui,不知楼主中不中意呢?
```python
import contextlib


好棒,如果可以反过来查询就好了

xiaoxino 发表于 2023-7-26 10:22

你这个不能互转那
页: [1] 2
查看完整版本: 【源码+打包】字符串转换MD5小工具