我是Python新手。我只是编写了一个简单的函数,通过使用2个变量找到输入数字中最大的数字。
def find_greatest():
m = 0
while(True):
n = raw_input('Enter number: ')
n = float(n)
if (n>=m):
m = n
greatest = n
elif (n==-1):
print('Greatest number is ' + str(greatest))
break
我不想使用列表或词典。现在我想要的只是通过在上面的代码中进行一些更改来使用2个变量来找到最低的数字。
答案 0 :(得分:0)
这通常不是做您想做的事情的好方法,但仅仅将n >= m
更改为n <= m
无法工作的原因是因为n == -1
检查需要成为if
声明中的第一张支票。
如果你坚持这样做,试试这样的事情:
def find_smallest():
smallest = None
while(True):
n = raw_input('Enter number: ')
try:
n = float(n)
except ValueError:
print 'Enter a valid positive number.'
continue
if (n == -1.0):
if smallest is None:
print('Cannot find smallest. No numbers were entered.')
else:
print('Smallest number is {}'.format(smallest))
break
if n < 0:
print('Enter a positive number.')
continue
else:
smallest = n
答案 1 :(得分:0)
也许是这样的:
def foo():
m = 0
n = 0
Input = raw_input('Enter numbers:\n')
numbers = Input.split(",")
n, m = float(numbers[0]), float(numbers[1])
if n > m:
return n
elif m > n:
return m
else m == n:
print "Numbers are equal\n"
更清晰的代码。 因此,对于最小数字,您只需要反向比较运算符