【问题标题】:A simple looping command In PythonPython中一个简单的循环命令
【发布时间】:2015-12-30 21:08:53
【问题描述】:

所以,我最近开始使用 python 编程,并决定编写一个简单的代码来运行一些简单的数学运算,例如计算三角形中缺失的角度以及其他类似的简单事情。在我制作了这个程序和其他一些程序之后,我想也许我认识的其他人可以使用它,所以我决定尝试让它尽可能简单。代码如下:

a = int(input("What's one of the angles?"))
b = int(input("What's the other angle in the triangle?"))
c = (a + b)
d = 180
f = int(180 - c)
print(f)

代码本身确实有效,但唯一的问题是,如果您有超过 1 个问题,不断加载 Python 并按 F5 会变得乏味且相当繁琐,因此,我的想法是让它无限循环直到您决定关闭该程序的次数。每次我尝试寻找一种方法来做到这一点时,所有的 while True: 语句都是针对更大和更复杂的代码段,而这可能是我的第五或第十段代码,我无法理解其中的一些为它编码。

如果有人愿意提供帮助,我将不胜感激任何有关此主题的帮助或建议。

【问题讨论】:

  • while True: 的建议是正确的。对于您的第一个循环程序,您只需将其添加到程序顶部,然后缩进下面的所有内容。
  • c = (a + b) 可以简单写成c = a + bf = int(180 - c) 可以写成f = 180 - c
  • d = 180 可以写成空,因为它根本不被程序使用:)
  • 感谢您的帮助,我已经能够看到哪里出了问题以及如何解决这个问题。
  • 更好的解决方案(imo)是创建一个执行程序的快捷方式。这使得再次运行变得简单,需要更少的额外提示来控制是否停止程序。另外,当你说“加载 Python 并按 F5”时,我大约 99.999999% 确定你在谈论 IDE。那不是 Python。那是一个运行 Python 的 IDE。 Python 可执行文件可以完全独立于 IDE 运行。

标签: python loops while-loop boolean


【解决方案1】:
while True:
    a = int(input("What's one of the angles?" + '\n'))
    b = int(input("What's the other angle in the triangle?"+ '\n'))
    c = (a + b)
    f = int(180 - c)
    print(f)
    if input("Would you like to do another? 'y' or 'n'"+ '\n').lower() == 'y':
        pass
    else:
        break

你可以问他们是否想再去一次。 y 将重新启动循环,n 将结束它。 .lower() 是在他们输入 YN 的情况下。

正如@Two-BitAlchemist 提到的d=180 是不必要的。

【讨论】:

  • 感谢您的帮助,但它与其他问题一样反复出现,我收到一条错误消息,提示“预期和缩进块”,“a”变量突出显示。
  • Simpy 确保缩进是正确的。 python 或制表符中的 4 个空格。你用的是什么IDE?他们通常会为你做。
  • @RichardAutoglassPope 复制粘贴问题?
  • 我现在已经能够解决这个问题,我要感谢大家。
  • 很高兴它为您解决了问题。请接受对您帮助最大的答案之一
【解决方案2】:

您可以将代码放在一个函数中,例如:

def simple():
    a = int(input("What's one of the angles?"))
    b = int(input("What's the other angle in the triangle?"))
    c = (a + b)
    d = 180
    f = int(180 - c)
    print(f)

然后只需输入:

simple()

每次都使用它。

【讨论】:

  • 感谢您的想法,但我收到一条错误消息,提示“预期有缩进块”,其中“a”变量突出显示。
  • 需要像我展示的那样缩进。缩进在 python 中非常重要(与其他语言不同),所以越早理解越好。
  • 感谢您的帮助,我很感激您告诉我在 python 中执行简单脚本时缩进的内容。
【解决方案3】:

while True 这个脚本已经够用了,为什么要放弃呢?

while True:

    a = int(input("What's one of the angles?"))
    b = int(input("What's the other angle in the triangle?"))
    c = (a + b)
    d = 180
    f = int(180 - c)
    print(f)

【讨论】:

  • 唯一的问题是,如果我尝试使用 while True 命令,我会收到一条错误消息,提示“预期有缩进块”,并且“a”变量会突出显示。
  • @RichardAutoglassPope 你必须习惯 python 缩进规则。 python很清楚,因为没有括号,而且价格是缩进的。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-01-15
  • 2016-05-24
  • 2012-04-04
  • 1970-01-01
  • 1970-01-01
  • 2013-11-15
  • 2023-03-31
相关资源
最近更新 更多