[英]finding min and max in python
编写一个程序,反复提示用户输入整数,直到用户输入“完成”。 输入“完成”后,打印出最大和最小的数字。 如果用户输入的不是有效数字的任何内容,则使用 try/except 捕获它并发出适当的消息并忽略它。
这是我尝试过很多方法但无法达到最小和最大数字的问题。 请帮我写代码:
largest = None
samllest = None
while True:
num = input("Enter Numbers:")
if num == 'done' :
break
else:
try:
n = int(num)
except:
print("Invalid Input")
使用 walrus 运算符来获得乐趣和简洁:
numbers = list()
while (the_input := input('Enter a number:')) != 'done':
numbers.append(int(the_input))
print(f'{min(numbers)=}, {max(numbers)=}')
你可以做一个输入数字的列表:
numbers=[]
while True:
num = input("Enter Numbers:")
if num == 'done' :
break
else:
try:
numbers.append(int(num))
except:
print("Invalid Input")
print("Min", str(min(numbers)))
print("Max", str(max(numbers)))
你会得到这样的结果:
Enter Numbers:2
Enter Numbers:3
Enter Numbers:4
Enter Numbers:5
Enter Numbers:6
Enter Numbers:7
Enter Numbers:8
Enter Numbers:done
Min 2
Max 8
给你,试探一下:
lg = None
sm = None
s = None
while s != 'done':
s = input("Enter numbers:")
if s.isdigit():
s = int(s)
if lg == None and sm == None:
lg = s
sm = s
if lg <= s:
lg = s
if sm >= s:
sm = s
print(f"Min: {sm}, Max: {lg}")
你可以测试它:
Enter numbers:5
Enter numbers:6
Enter numbers:1
Enter numbers:5
Enter numbers:8
Enter numbers:9
Enter numbers:done
Min: 1, Max: 9
如果你想要一个 try/except 块......
lg = None
sm = None
s = None
while s != 'done':
try:
s = int(input("Enter numbers:"))
if lg == None and sm == None:
lg = s
sm = s
if lg <= s:
lg = s
if sm >= s:
sm = s
except Exception as e:
print(e)
print(f"Min: {sm}, Max: {lg}")
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.