Python 计算循环中的迭代次数
我们如何计算while循环中用户给出的输入数 假设用户输入50个数字。我如何计算输入的数量 比如说,Python 计算循环中的迭代次数,python,python-2.7,while-loop,Python,Python 2.7,While Loop,我们如何计算while循环中用户给出的输入数 假设用户输入50个数字。我如何计算输入的数量 比如说, largest_so_far = None smallest_so_far = "+inf" while True: value = raw_input(">") if value == "done": break try: value = float(value) except ValueError:
largest_so_far = None
smallest_so_far = "+inf"
while True:
value = raw_input(">")
if value == "done":
break
try:
value = float(value)
except ValueError:
print "invalid input"
continue
if value > largest_so_far:
largest_so_far = value
if value < smallest_so_far:
smallest_so_far = value
迄今为止最大值=无
迄今为止的最小值=“+inf”
尽管如此:
值=原始输入(“>”)
如果值==“完成”:
打破
尝试:
值=浮动(值)
除值错误外:
打印“无效输入”
持续
如果值>迄今为止的最大值:
迄今为止的最大值=值
如果值小于目前为止的最小值:
迄今为止的最小值=值
您可以使用一个简单的计数器:
largest_so_far = float('-inf')
smallest_so_far = float('inf')
i = 0
while True:
value = raw_input(">")
if value == "done":
break
try:
value = float(value)
i = i + 1
except ValueError:
print "invalid input"
continue
if value > largest_so_far:
largest_so_far = value
if value < smallest_so_far:
smallest_so_far = value
maximum\u迄今为止=浮点('-inf')
迄今为止的最小值=浮点('inf')
i=0
尽管如此:
值=原始输入(“>”)
如果值==“完成”:
打破
尝试:
值=浮动(值)
i=i+1
除值错误外:
打印“无效输入”
持续
如果值>迄今为止的最大值:
迄今为止的最大值=值
如果值小于目前为止的最小值:
迄今为止的最小值=值
i的值将是用户给出的输入量减去完成的。您可以通过将增量移动到if
上方来添加它
如果您不知道计数器是什么,我强烈建议您在编码之前了解更多。您如何知道如何使用try
语句而不使用计数器?你自己做过这个代码吗
使用来自Internet的代码不是问题,但您需要理解它。:-) 你能举一个循环的例子吗?根据实现的不同,一个.size
就足够了。。或者计数器..@Docteur我编辑了我的问题实际上我知道计数器,但我认为会有其他方法,比如我们用来计数的方法。list()。我已经得到了来自的帮助来编写上面的代码,但没有复制我已经用我自己的方式重写了它:-)@Freddy明白这不是一个指控,只是一个以防万一的建议。您没有要计数的列表-这就是为什么我要求查看您的循环,计数会起作用。我认为OP需要float('inf')
和float('-'inf')
作为基本值-None
与float
类型相比,如果在Python3.x中运行,则会导致问题,+inf'
只是一个字符串(在2.x中-它只是有一个副作用,看起来很有效-虽然在3.x中,你会再次得到一个例外)…而且…无论它是否是有效的浮点值,计数器都会递增-因此值的数量!=“done”
被计数,而不是有效数字的计数。。。