那么,我如何删除Tkinter.Label
循环中生成的所有for
并生成新的[5,12,13]
,同时保留我的生成方法?因为如果我想降低数字,它将不会删除前一个数字的标签(例如,输入'6',你得到[3,4,5],下一个数字'14'产生[5,12,13]
如果有input < 14
,我怎么能删除import Tkinter
import sys
from fractions import gcd
def func(event):
x = int(e1.get()) # get max number
row = 0
column = 0
count = 0
for a in range(1, x): # loops to get each value in range of x
for b in range(a, x):
for c in range(b, x):
if a**2 + b**2 == c**2 and gcd(a, b) == 1: # if it is a primitive pyth triple, print
row += 1
l = Tkinter.Label(root, text=('[',a,',',b,',',c,']'))
assert isinstance(l, object)
l.grid(row=row, column=column, ipadx=5, ipady=5, sticky='W''E') # display each group of triples to root
root.title('Primitive Triples')
if count > 1:
l.destroy()
if row == 7:
column += 1
row -= 8
def close(): # close program
Tkinter.sys.exit(0)
sys.exit(0)
root = Tkinter.Tk() # establish main gui
root.title('Generator')
e1 = Tkinter.Entry(root)
assert isinstance(e1, object) # only method I've found to allow for Entry().grid()
e1.grid(ipadx=5, ipady=5, sticky='W''E')
root.bind('<Return>', func) # bind to Enter, cleaner and quicker than a button
root.mainloop()
?如果某人有更好的方法为这些标签生成输出,如果你想尝试教育我一点,我将不胜感激。
这是代码:
DELETE https://api.thingspeak.com/channels/4/feeds
api_key=XXXXXXXXXXXXXXXX
答案 0 :(得分:1)
在这里,我认为这就是你想要的:(如果是python 2,用import tkinter替换import tkinter作为tkinter)
byte[] Bytes;
Test test1 = new Test();
var formatter = new BinaryFormatter();
using (var stream = new MemoryStream())
{
formatter.Serialize(stream, test1);
Bytes= stream.ToArray();
}
最初发布的代码有哪些变化如下:
原始代码尝试在一个函数中执行所有操作;它没有丢弃旧的结果;结果是(1)显示器是旧的和较新的结果(不准确和不准确)的奇怪组合,并且(2)被丢弃,但是从未被破坏的小部件混乱了应用程序空间。
在OSX上,小部件如下所示: