gpt4 book ai didi

python - 如何总计一个while循环?

转载 作者:太空宇宙 更新时间:2023-11-04 07:43:21 27 4
gpt4 key购买 nike

目的是放入diff ages,如果输入-1则程序停止,我的总计语句是错误的。请有人帮我解决它。

Totalage = 0

age = 0

print "Enter you Family member's ages!"

age = raw_input ("Enter an age ")

while age != -1:
age = input("Enter an age ")
Totalage = Totalage + age

print Totalage

最佳答案

你的代码有两个问题

  1. 您正在跳过您的第一个输入,并且您没有将其添加到您的总数中
  2. 您正在将最后一个终结符输入 -1 添加到您的 Total。

只需更改 while 循环中语句的顺序

age = int(raw_input ("Enter an age "))
while age != -1:
Totalage = Totalage + age
age = int(input("Enter an age "))

另请注意,raw_input,通常会返回一个字符串,在您可能想要对其进行计算之前需要将其转换为 int。


Itertools 提供了一些很棒的工具,为了好玩,我尝试用 itertools.takewhile 编写上面的 while 循环

>>> from itertools import count, takewhile
>>> sum(takewhile(lambda x: x != -1,
(int(raw_input("Enter an age ")) for e in count())))
Enter an age 20
Enter an age 30
Enter an age 40
Enter an age 50
Enter an age -1
140

关于python - 如何总计一个while循环?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14451115/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com