前提
pythonのtkinterを使ってタイピングソフトを制作しています。
左に表示されている問題文を右に打ち込んで一致しているかを判断します。
実現したいこと
問題文と一致している文字だけを■に置き換えて表示させたい。
発生している問題・エラーメッセージ
打ち込んだ文字が間違っていても置き換えられずそのまま表示され、すべて一致している時だけ置き換えられて■しか表示されない。
該当のソースコード
python
import re import tkinter as tk baseGround = tk.Tk() baseGround.title('W3S4')baseGround.geometry('1400x850')baseGround.configure(bg="#baffb5") f = open('1.txt',encoding='UTF-8')txt1 = f.read() def judge(): txt2 = textbox_input.get(1.0,tk.END) end = re.sub(txt1, '■', txt2) print(end) Button_judge = tk.Button(baseGround, text='判定',height=12,width=9,command=judge)textbox_input = tk.Text(width=50,height=70,font=("",18))textbox = tk.Text(width=50,height=70,font=("",18))textbox.insert(tk.END,txt1) textbox_input.place(x=745,y=30)textbox.place(x=45,y=30)Button_judge.place(x=660,y=350) baseGround.mainloop()
補足情報(FW/ツールのバージョンなど)
ソースコードのtxt1が問題文、txt2が打った文字です。
python3.10.4
0 コメント