Python Tkinter文本和打印

Python Tkinter文本和打印,python,canvas,printing,tkinter,Python,Canvas,Printing,Tkinter,我对Python的Tkinter模块有问题。当我尝试制作画布时,直到外壳完成打印,画布才会出现。我的代码如下所示: from tkinter import * import time tk = Tk() canvas = Canvas(tk, width=500, height=500) canvas.pack() money = 500 canvas.create_text(100, 30, text="Money: " + str(money), font=('Impact', 25)) t

我对Python的Tkinter模块有问题。当我尝试制作画布时,直到外壳完成打印,画布才会出现。我的代码如下所示:

from tkinter import *
import time
tk = Tk()
canvas = Canvas(tk, width=500, height=500)
canvas.pack()
money = 500
canvas.create_text(100, 30, text="Money: " + str(money), font=('Impact', 25))
time.sleep(2)
print("Give Me A Chance To Load")
time.sleep(4)
buy = input("Will You Buy A Cow?")
if buy == "Yes":
    money -= 50
if buy == "No":
    money -= 999999999999999999999

这个程序应该更新画布上的钱。问题是画布不会出现,直到你回答输入,钱仍然在500。我做错了什么?

您正在呼叫时间。睡眠(…)。你知道这是怎么回事吗?它会导致你的程序——你的整个程序——休眠。当它睡觉时,它不能做其他事情,比如把自己画到屏幕上

此外,在事件循环运行之前,无法绘制GUI(几乎使用任何工具箱)。正是响应“绘制请求”事件的事件循环导致窗口出现在屏幕上

Tkinter不是设计用来处理来自控制台的输入的。试图这样做几乎总是会让人失望