',ismodifytext)#点击加密tkinter.Button(tk,text='点击加密',width=14,command=encryption).place(x=10,y=198)#解密isdecry=False #为了防止点击多次解密出现bug#解密算法,参数:秘钥 , 文本def decrypt():key=inputkey2.get()global isdecryif len(key)>2 and len(key)<10 and isdecry:text=inputtext2.get(1.0,'end')text2=''#将key转化成ascii码列表newkey=[]for i in key:newkey.append(ord(i))ii=0for i in text:if ord(i)!=10:text2=text2+chr(ord(i)-newkey[ii])#关键部分 , 解密公式else:text2=text2+chr(10)ii=ii+1if ii>=len(newkey):ii=0inputtext2.delete(1.0,'end')inputtext2.insert('insert',text2)isdecry=False#修改文本触发def ismodify2(*o):global isdecryisdecry=Truetkinter.Label(tk,text='------------------------------------解 密------------------------------------').place(x=10,y=250)#设置秘钥tkinter.Label(tk,text="请输入3-9位的秘钥").place(x=10,y=280)ik2=tkinter.StringVar()inputkey2=tkinter.Entry(tk,textvariable=ik2,width=36)inputkey2.place(x=150,y=280)#输入要解密的文本tkinter.Label(tk,text="请输入要解密的文本").place(x=10,y=310)inputtext2=tkinter.Text(tk,width=36,height=10)inputtext2.place(x=150,y=310)inputtext2.bind('',ismodify2)#点击解密tkinter.Button(tk,text='点击解密',width=14,command=decrypt).place(x=10,y=448)tk.mainloop() #显示窗口1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192934.2 窗口效果
文章插图
4.3 输入加密秘钥和文本效果
文章插图
4.4 加密后效果
文章插图
4.5 输入解密秘钥和加密的文本效果
文章插图
4.6 解密效果
文章插图
PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取
python免费学习资料以及群交流解答后台私信小编01即可