【发布时间】:2021-12-30 09:04:36
【问题描述】:
输入是数字,直到输入负数,之前的每个数字都乘以 2,然后打印结果并格式化为逗号后的第二位数字。 我尝试了以下方法,但是循环只是无休止地继续给我一个结果,我怎样才能让它停止并与下一个输入相乘?
x = float(input())
while x > 0:
result = x * 2
if x < 0:
print('Negative number!')
print(f'Result: {result:.2f}')
【问题讨论】:
-
输入是在循环之前,而不是在循环内部;所以这只发生一次。
-
你可以把你的输入代码放在while循环里面。
-
if x < 0:永远不会是真的,因为你只有在x > 0时才会进入循环 -
我也不完全确定应该使用 while 循环,而不是 for
-
如果您想按预定次数执行某事,则 For 循环会更好。如果您想在满足某个条件之前执行某些操作,则 while 循环会更好
标签: python loops if-statement while-loop multiplication