Tkinter将条目转换为int错误

我试图完成我的程序,但它出现了这个错误...程序会问你有几个边和边的长度,然后画一个形状...

选择 | 换行 | 行号
  1. import tkinter
  2. import turtle
  3. window = tkinter.Tk()
  4.  
  5. def callback():
  6.     pen1 = turtle.Pen()
  7.     for i in range(ent):
  8.         pen1.forward(ent1)
  9.         pen1.right(360/ent)
  10.  
  11.  
  12. lbl = tkinter.Label(window, text="How Many Sides :")
  13. lbl.pack()
  14.  
  15. ent = tkinter.Entry(window)
  16. ent.pack()
  17.  
  18. lbl1 = tkinter.Label(window, text="Length Of Sides :")
  19. lbl1.pack()
  20. ent1 = tkinter.Entry(window)
  21. ent1.pack()
  22.  
  23.  
  24. btn = tkinter.Button(window, text="Draw", command = callback)
  25. btn.pack()
  26. window.title("Shape Creator")
  27. window.geometry("300x300")
  28. window.mainloop()
# 回答1


Tkinter变量不是Python变量,因此必须使用get()进行转换。默认情况下,这些值必须转换为整数,因为它们是字符串。将CALLBACK()函数更改为以下内容以查看其工作原理。

选择 | 换行 | 行号
  1. def callback():
  2.    value=ent.get()
  3.    print("sides =", value, type(value))
  4.    value=ent1.get()
  5.    print("length =", value, type(value))
  6.  
# 回答2


仍然出现一个错误(对不起,我是python的新手)TypeError:无法将Sequence乘以'Float'类型的非整型
代码:

选择 | 换行 | 行号
  1. import tkinter
  2. import turtle
  3. window = tkinter.Tk()
  4.  
  5. def callback():
  6.    value=ent.get()
  7.  
  8.    print("sides =", value, type(int))
  9.    value1=ent1.get()
  10.    print("length =", value1, type(int))
  11.  
  12.    pen1 = turtle.Pen()
  13.    pen1.forward(value1)
  14.    pen1.right(360/value)
  15.  
  16.  
  17. lbl = tkinter.Label(window, text="How Many Sides :")
  18. lbl.pack()
  19.  
  20. ent = tkinter.Entry(window)
  21. ent.pack()
  22.  
  23. lbl1 = tkinter.Label(window, text="Length Of Sides :")
  24. lbl1.pack()
  25. ent1 = tkinter.Entry(window)
  26. ent1.pack()
  27.  
  28.  
  29. btn = tkinter.Button(window, text="Draw", command = callback)
  30. btn.pack()
  31. window.title("Shape Creator")
  32. window.geometry("300x300")
  33. window.mainloop()
# 回答3


您必须发布完整的错误消息以显示错误发生的位置才能获得帮助。看见
此处将字符串转换为整数
有关如何转换的一般信息,请参阅。

标签: python

添加新评论