【问题标题】:Python: a part of my program is looping over and over again instead of continuing onwardsPython:我的程序的一部分一遍又一遍地循环而不是继续
【发布时间】:2021-06-23 18:13:38
【问题描述】:

我是编程新手,如果我听起来不知道我在说什么,我很抱歉。我想创建一个高级计算器,一个可以计算平方甚至特定方程(如毕达哥拉斯和平方根)的计算器,在做了一些研究并了解如何在计算机上实际计算这些之后,我发现自己坚持做一个正常的总和:

number1add = int(input("What is your First number:"))
number2add = int(input("What is you Second number:"))
sum = number1add + number2add

if intro == "sum":
    print(number1add, number2add)
    print(sum)

您会看到,由于某种原因,当我运行此程序时,程序会不断重复“您的第一个数字是多少”、“您的第二个数字是多少”,而不是继续前进,我知道这可能可以通过以下方式解决只是添加了一个转换两者的声明,但是在互联网上搜索了一段时间后,没有一个帖子类似于我似乎遇到的问题,如果有人知道答案,我很想知道

编辑:由于很多人似乎感到困惑,这里是完整的代码

intro = str(input("What calculation do you want to perform:"))

number1add = int(input("What is your First number:"))
number2add = int(input("What is you Second number:"))
sum = number1add + number2add

print(intro)

if intro == 'sum':
    print(number1add, number2add)
    print(sum)

这是我执行代码时发生的情况:

What calculation do you want to perform:sum
What is your First number:2
What is you Second number:2
What is your First number:2
What is you Second number:2
What is your First number:

【问题讨论】:

  • 您在此处显示的代码中没有一个循环,请发送minimal reproducible example
  • 请出示您的完整代码。你的代码现在的样子,它应该要求输入两个数字,然后脚本就会结束。
  • 请检查How to Ask。发布minimal reproducible example。也不要使用sum作为名称,它是内置函数。
  • 除了 "intro = str(input("What calculation do you want to perform:"))" 是代码的一部分,这是问题发生时使用的确切代码
  • 贴出的代码不会产生您声称的问题。

标签: python calculator


【解决方案1】:

好吧,我以某种方式解决了这个问题,我只是对代码进行了不同的格式化,突然间它就起作用了,我真的可以说为什么会发生这种情况,但我不知道

【讨论】:

    【解决方案2】:

    试试:

    intro = input("What calculation do you want to perform:")
    
    number1add = input("What is your First number:")
    number2add = input("What is you Second number:")
    sum1 = int(number1add) + int(number2add)
    
    print(intro)
    
    if (intro == 'sum'):
        print(number1add, number2add)
        print(sum1)
    

    你还给了整数名称sum,这是python中的一个内置函数。

    【讨论】:

      【解决方案3】:

      我可以看到您正在使用“intro”,但无论如何您都没有定义它,因此循环“if”将不会启动并将再次从程序顶部运行,或者将完成运行

      【讨论】:

      • 这是评论,不是答案。当您积累足够的声誉时,您将获得评论特权。在那之前,您只需要听评论流,尽可能回答,并使用评论队列来获得积分。
      • 如果你看cmets,我只是忘了提,但我确实定义了:intro = str(input("你要执行什么计算:"))。在我输入之后: print(intro)
      • 是的,现在我看到了那部分,也许你应该发布整个代码来看看为什么这个循环没有结束,因为代码中的逻辑是正确的,条件和选择的操作.
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-09-15
      • 1970-01-01
      • 2017-08-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多