我是一个相当新的程序员,目前我已经被分配了一个项目来创建一个循环计算器,即使在你使用其中一个计算器功能之后,它仍会继续下去,直到你做出选择。我的计算器目前的问题是,每当我尝试在Pydev上测试我的函数时,都会有无休止的终止。我已经解决了第一个问题,Pydev将我的一个变量(选择)当作未使用读取的,因此我使用了“ctrl + 1”技巧,并且摆脱了未使用的变量警告。关于如何能够运行此程序并使其不断循环的任何提示?Pydev程序不断终止
def main():
loop=1
choice=0 # @UnusedVariable
while loop == 1:
print("Welcome to Calculator Function!")
print("Your options are:")
print(" ")
print("1/) Addition")
print("2/) Subtraction")
print("3/) Multiplication")
print("4/) Division")
print("5/) Quit CalculatorFunction.py")
print(" ")
choice = int(raw_input("Choose your option: ").strip())
if choice == 1:
add1 = input("Add what: ")
add2 = input("To what: ")
print add1, "+", add2, "=", add1+add2
elif choice == 2:
sub2 = input("Subtract what: ")
sub1 = input("From what: ")
print sub1, "-", sub2, "=", sub1-sub2
elif choice == 3:
mult1 = input("Multiply what: ")
mult2 = input("To what: ")
print mult1, "*", mult2, "=", mult1*mult2
elif choice == 4:
div2= input("Divide what: ")
div1= input("From what: ")
print div1, "/", div2, "=", div1/div2
elif choice == 5:
loop = 0
print"Thank you for using CalculatorFunction.py have a good day!"
else:
print"No selection made, please try again."
if __name__ == '__main__':
main()
* “不断终止” *?我会说它永远不会终止; 'loop == 1'无限期地保持为'真'。 – jonrsharpe
它看起来像你想要的是[REPL](http://en.wikipedia.org/wiki/Read%E2%80%93eval%E2%80%93print_loop)(read-eval-print loop)。目前,我能看到的最明显的问题是除了'while'循环中的打印以外,你什么都没有。如果您正确复制了缩进,则while循环应该永远运行,除了提示之外什么也不打印。 –
另外,你是(危险地)混合'input'和'raw_input'。如果你使用的是足够早的python版本,而'raw_input'是一个选项,那么你应该不会**使用'input'。当然,角落案例会让你的生活方式更容易,没有特别的缺点,但这些非常非常罕见,一个好的经验法则是假装他们不存在,直到你更有知识。 –