python - 寻找一种方法来阻止这个基本程序中的内存泄漏

标签 python python-3.x memory-leaks tkinter

我是 Python 新手。该程序在 Tk() 窗口内创建一个标签。 “hi”这个词被无限期地写入标签中。如何删除旧的 hi,同时仍无限期地写入新的 hi?这就是我阻止内存泄漏的方法吗?这是代码:

from tkinter import *

def box(a):
    z=Label(root,text='%s'%(a))
    z.place(width=50,height=20)

def start(root):
    a="hi"
    box(a)
    root.after(100, start, root)

root = Tk()
start(root)
root.mainloop()

最佳答案

只替换文本而不是每次都创建 Label 对象怎么样。

from tkinter import *

def box(a):
    z['text'] = a

def start(root):
    box('hi')
    root.after(100, start, root)

root = Tk()
z = Label(root, text='')
z.place(width=50, height=20)
start(root)
root.mainloop()
<小时/>
from tkinter import *


def start(root, z):
    a = 'hi'
    z['text'] = a
    root.after(100, start, root, z)


root = Tk()
z = Label(root, text='')
z.place(width=50, height=20)

start(root, z)

root.mainloop()

关于python - 寻找一种方法来阻止这个基本程序中的内存泄漏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31284719/

相关文章:

python - R 轴刻度未显示在极坐标图上

python - 在 admin django 1.6 中注册抽象模型

python - BioPython Pubmed Eutils 网址?

objective-c - 如何判断这个内存泄漏是从哪里来的呢?

python - 选择 x 为 nan 而 y 介于两个值之间的索引

python - Pandas 根据左侧的列重命名列

python - 算法检测数据语料库中的重复/相似字符串——比如 Python 中的电子邮件主题

python-3.x - 如何有效地将一组 geohashes 转换为多边形?

android - 为什么建议不要保留带有 UI 的 fragment ?

iphone - 将字符串提供给对象时泄漏字符串