我是新来的,完全是 python 的初学者,所以请帮助我。我已经完成以下操作来创建一个程序,该程序告诉用户输入的数字是向上、向下还是与输入的第一个数字相同。我的问题是,我如何为它创建一个循环,以便用户可以输入尽可能多的数字,然后在输入 0 时结束该过程?
print ('Please enter your first number')
firstNumber = input()
print('Enter the next number(0 to finish)')
nextNumber=input()
if firstNumber<nextNumber:
print ('Up')
if firstNumber>nextNumber:
print ('Down')
if firstNumber==nextNumber:
print ('Same')
谢谢
从英文翻译成python,你要的是
while nextNumber != 0:
...keep looping...
因此,无需过多更改代码,您可以简单地执行以下操作:
print ('Please enter your first number')
firstNumber = input()
print('Enter the next number(0 to finish)')
nextNumber=input()
while nextNumber != 0:
if firstNumber<nextNumber:
print ('Up')
if firstNumber>nextNumber:
print ('Down')
if firstNumber==nextNumber:
print ('Same')
# turn the nextNumber into the firstNumber
firstNumber = nextNumber
print('Enter the next number(0 to finish)')
nextNumber=input()
还有一些您可以改进的地方。例如,您不需要在 input
之前使用 print
语句。您可以简单地执行 input('Please enter your first number')
。此外,您可以使用 if
-else
而不是仅使用 if
。
下面是它的外观示例:
firstNumber = input('Please enter your first number')
nextNumber=input('Enter the next number(0 to finish)')
while nextNumber != 0:
if firstNumber<nextNumber:
print ('Up')
elif firstNumber>nextNumber:
print ('Down')
elif firstNumber==nextNumber:
print ('Same')
# turn the nextNumber into the firstNumber
firstNumber = nextNumber
nextNumber=input('Enter the next number(0 to finish)')
现在,你说你想收集所有的 Ups
和 Downs
并在最后打印它们。您可以简单地创建一个 list
并将值附加到该 list
。像这样:
ups_and_downs = []
firstNumber = input('Please enter your first number')
nextNumber=input('Enter the next number(0 to finish)')
while nextNumber != 0:
if firstNumber<nextNumber:
ups_and_downs.append('Up')
print ('Up')
elif firstNumber>nextNumber:
ups_and_downs.append('Down')
print ('Down')
elif firstNumber==nextNumber:
ups_and_downs.append('Same')
print ('Same')
# turn the nextNumber into the firstNumber
firstNumber = nextNumber
nextNumber=input('Enter the next number(0 to finish)')
print(ups_and_downs)