python - 如何更改此代码以在 GUI tkinter 中工作?
问题描述
基本上,用户将输入一个短语,输出将是经过审查的短语。我的原始代码是这样的:
for c in phrase:
if c!=' ':
print('-', end = '')
else:
print(' ', end = '')
代码会为每个字母打印“-”,但确保在空格时不会打印。我似乎无法让它在 GUI 中工作。我还编写了一个代码来询问用户该短语是什么:
def phrase():
phrase=simpledialog.askstring('Word/Phrase','Enter word to be guessed')
btnw=Button(window,text='Enter phrase',command=phrase)
我是在正确的方向还是有其他方法可以做到这一点?对不起,如果我没有解释清楚,我是一个新手程序员。谢谢!
TDLR; 代码工作并在 IDE 中产生正确的输出,但我不知道如何在 GUI 本身上显示输出
解决方案
定义一个标签来保存结果:
censored = Label(window, text='')
censored
然后在输入短语后更新:
censored['text'] = ''.join(' ' if x == ' ' else '-' for x in phrase)
推荐阅读
- java - 如何在 BorderLayout.SOUTH 中添加一个矩形?
- r - 将列与另一列分开而不对其进行硬编码
- reactjs - 如何在 Firebase 中注册用户后立即将 displayName 添加到用户?
- flutter - 如何使用颤振在 Firestore 中编写嵌套数组
- python - 通过 docker-compose 文件创建的 django 超级用户不起作用
- r - 如何在 R data.table 中进行移位操作,同时为最后一个比较附加一行?
- html - 如何使用 css flex 保持一个盒子为空
- python - TypeError: 'dict' 对象在 Python3 或 Python2 中不可调用,导致内存错误
- database - OLAP 系统中的星形 snd 雪花模式
- java - 如何实现多语言安卓应用?