因此,我开始在Python中学习Tkinter(刚开始学习Python),并决定尝试使用Tkinter创建一个阶乘计算器。我不会为任何东西太花哨和这里是我想出来的:Python因子计算器错误?
from Tkinter import *
import tkMessageBox
def calculate():
number = inputNumber.get()
inputNumber.delete(0, END)
product = 1
for i in range(number):
product = product * (i+1)
inputNumber.insert(product)
cal = Tk()
cal.title("Factorial Calculator")
cal.geometry('450x300+200+200')
factorialNumber = IntVar()
inputNumber = Entry(cal, textvariable=factorialNumber)
inputNumber.pack()
enterButton= Button(cal, text="CALCULATE!", width=20,command=calculate)
enterButton.pack(side='bottom',padx=15,pady=15)
cal.mainloop()
于是我就这样,当我打“计算!”按钮,它吐出这个错误:
Traceback (most recent call last):
File "C:\Python27\Lib\lib-tk\Tkinter.py", line 1410, in __call__
return self.func(*args)
File "C:\Users\Wesley Yu\Desktop\New folder (4)\module1.py", line 8, in calculate
for i in range(number):
TypeError: range() integer end argument expected, got str.
我已经试过修复它,但无济于事。我该怎么办?
很抱歉,如果这是很基本的,还在学习:)
编辑:啊,它的工作!我有另一件事,我需要修复,但谢谢你:) – user1323395 2012-04-10 07:28:06
这是一个完全不同的问题。 – 2012-04-10 07:29:33