如何使 python 程序变得轻便,它被编写为在没有 window 的情况下直接在屏幕上打印文本?

how to make the python program light, which is written to print the text on screen directly without window?

从最近几天开始,我一直在研究一个程序,其中一部分是直接在 window 屏幕上显示文本,并且还 update/change 根据要求显示它们。我已经在 python.

中使用 Tkinter 模块完成了这部分

问题是,每当我 运行 程序时,它的行为就像一个繁重的程序,导致其他进程变慢。此外,如果我尝试并行执行其他一些处理,文本的背景会变成黑色,这是绝对不可取的。as the shown in image

我还想显示一些动态符号,例如加载,但使用两个 Tkinter 小部件会使速度变慢。如果可能,请使其更加模块化和轻便。

from tkinter import *
import win32api, win32con, pywintypes
from time import sleep

f=Tk()
var = StringVar()
var.set(' ')
f =Label(textvariable = var, font=('Cooper','60'), fg='blue', bg='white')
f.master.overrideredirect(True)
f.master.geometry("+900+200")
f.master.lift()
f.master.wm_attributes("-topmost", True)
f.master.wm_attributes("-disabled", True)
f.master.wm_attributes("-transparentcolor", "white")
f.pack()


for i in range(10):
    sleep(5) # Need this to slow the changes down
    var.set(u'[ A ]' if i%2 else u'[ B ]')
    f.update_idletasks()

另外,想问一下我们可以不使用 Tkinter 来做吗 module.so 它变得更轻巧和模块化。并且依赖性会降低。

这是一个代码,它可以使您的代码具有响应性,并且不要过多地使用您的 cpu。

from tkinter import *
import win32api, win32con, pywintypes
import time

f=Tk()
var = StringVar()
var.set(' ')
f =Label(textvariable = var, font=('Cooper','60'), fg='blue', bg='white',bd=0)
f.master.overrideredirect(True)
f.master.geometry("+900+200")
f.master.lift()
f.master.wm_attributes("-topmost", True)
f.master.wm_attributes("-disabled", True)
f.master.wm_attributes("-transparentcolor", "white")
f.pack()


for i in range(10):
    f.update()
    t = time.time()
    while time.time() - t < 5:
        f.update()
    var.set(u'[ A ]' if i%2 else u'[ B ]')
    f.update_idletasks()
    f.update()

这是任务管理器的图片。它只占用 15 MB 内存,没有 cpu: