初级Python代码问题
5.2编写一个程序,反复提示用户输入整数,直到用户输入“完成”。输入“完成”后,打印出最大和最小的数字。如果用户输入的不是有效号码,请使用try/except捕捉它,并发出相应的消息,忽略该号码。输入问题5.1手册中的数字,并匹配所需输出,如图所示 这是我的密码:初级Python代码问题,python,Python,5.2编写一个程序,反复提示用户输入整数,直到用户输入“完成”。输入“完成”后,打印出最大和最小的数字。如果用户输入的不是有效号码,请使用try/except捕捉它,并发出相应的消息,忽略该号码。输入问题5.1手册中的数字,并匹配所需输出,如图所示 这是我的密码: largest = None smallest = None while True: inp = raw_input("Enter a number: ") if inp == "done" : break t
largest = None
smallest = None
while True:
inp = raw_input("Enter a number: ")
if inp == "done" : break
try:
num = float(inp)
except:
print "Invalid input"
if smallest is None:
smallest = num
elif num < smallest:
smallest = num
elif num > largest:
largest = num
continue
print "Maximum is", largest
print "Minimum is", smallest
max=None
最小=无
尽管如此:
inp=原始输入(“输入一个数字:”)
如果inp==“完成”:中断
尝试:
num=浮点(inp)
除:
打印“无效输入”
如果最小值为无:
最小=num
elif num<最小值:
最小=num
elif num>最大值:
最大=num
持续
打印“最大值为”,最大值为
打印“最小值为”,最小值为
******请让我知道这段代码中的逻辑错误******A:您永远不会将最大值赋值为无 B:如果float(inp)失败,您仍然尝试继续。你不应该。虽然您可以将那些if/elif语句移动到try块中,但我建议您不要这样做,因为这样您就有可能意外捕获到不应该捕获的内容。相反,使用try/except的被忽略的
else
block
在同一行中,这只是一个好的实践,除了你想要的错误,而不是所有的错误
C:不必了
largest = None
smallest = None
while True:
inp = raw_input("Enter a number: ")
if inp == "done" : break
try:
num = float(inp)
except ValueError: #and not all errors!
print "Invalid input"
else:
# This block will execute if no exception is caught.
# Yes, this is valid python.
if smallest is None: #first number!
smallest = num
largest = num
elif num < smallest:
smallest = num
elif num > largest:
largest = num
print "Maximum is", largest
print "Minimum is", smallest
max=None
最小=无
尽管如此:
inp=原始输入(“输入一个数字:”)
如果inp==“完成”:中断
尝试:
num=浮点(inp)
除了ValueError:#而不是所有错误!
打印“无效输入”
其他:
#如果未捕获异常,则将执行此块。
#是的,这是有效的python。
如果最小值为无:#第一个数字!
最小=num
最大=num
elif num<最小值:
最小=num
elif num>最大值:
最大=num
打印“最大值为”,最大值为
打印“最小值为”,最小值为
编写一个程序,反复提示用户输入整数,直到用户输入“完成”。输入“完成”后,打印出最大和最小的数字。如果用户输入的不是有效号码,请使用try/except捕捉它,并发出相应的消息,忽略该号码
largest = None
smallest = None
while True:
inp = raw_input("Enter a number: ")
if inp == "done":
break
try:
num = int(inp)
if smallest is None:
smallest = num
elif num < smallest:
smallest = num
elif num > largest:
largest = num
except:
print "Invalid input"
continue
print "Maximum is", largest
print "Minimum is", smallest
max=None
最小=无
尽管如此:
inp=原始输入(“输入一个数字:”)
如果inp==“完成”:
打破
尝试:
num=int(inp)
如果最小值为无:
最小=num
elif num<最小值:
最小=num
elif num>最大值:
最大=num
除:
打印“无效输入”
持续
打印“最大值为”,最大值为
打印“最小值为”,最小值为
如果执行后出现不匹配错误最大值=无
largest = None
smallest = None
while True:
inp = raw_input("Enter a number: ")
if inp == "done" : break
try:
num = int(inp)
except:
print "Invalid input"
continue
if smallest is None:
smallest = num
elif num < smallest:
smallest = num
if largest is None:
largest = num
elif num > largest:
largest = num
print "Maximum is", largest
print "Minimum is", smallest
最小=无
尽管如此:
inp=原始输入(“输入一个数字:”)
如果inp==“完成”:中断
尝试:
num=int(inp)
除:
打印“无效输入”
持续
如果最小值为无:
最小=num
elif num<最小值:
最小=num
如果最大值为无:
最大=num
elif num>最大值:
最大=num
打印“最大值为”,最大值为
打印“最小值为”,最小值为
最大值=无
最小=无
尽管如此:
num=原始输入(“输入一个数字:”)
如果num==“完成”:中断
尝试:
nom=int(num)
除:
打印“无效输入”
持续
如果最大值为无:
最大=标称
elif nom>最大值:
最大=标称
如果最小值为无:
最小=标称
elif nom<最小值:
最小=标称
打印“最大值为”,最大值为
打印“最小值为”,最小值为
您应该在try:块中包含您的逻辑,以逻辑方式运行此程序。即使您将逻辑放在catch块中,它也会运行
将逻辑(if/else)放在捕获之后,无法计算捕获错误之前输入的数字的最高和最低数字
正确的方法
largest = None
smallest = None
while True:
num = input("Enter a number: ")
if num == 'done': break
try:
ival = int(num)
# This block will execute if no exception is caught.
# Yes, this is valid python.
if smallest is None: #first number!
smallest = ival
largest = ival
elif ival largest:
largest = ival
except ValueError: #and not all errors!
print ('Invalid input')
continue
print('Maximum is', largest)
print('Minimum is', smallest)
largest = None
smallest = None
while True:
num = input("Enter a number: ")
if num == 'done': break
try:
ival = int(num)
except ValueError:
print ('Invalid input')
continue
if smallest is None:
smallest = ival
largest = ival
elif ival largest:
largest = ival
print('Maximum is', largest)
print('Minimum is', smallest)
最大=无
最小=无
尽管如此:
num=输入(“输入一个数字:”)
如果num=='done':中断
尝试:
ival=int(num)
#如果未捕获异常,则将执行此块。
#是的,这是有效的python。
如果最小值为无:#第一个数字!
最小=ival
最大=ival
埃利夫·伊瓦尔:
最大=ival
除了ValueError:#而不是所有错误!
打印('无效输入')
继续
打印(“最大值为”,最大值)
打印(“最小值为”,最小值)
错误的方法
largest = None
smallest = None
while True:
num = input("Enter a number: ")
if num == 'done': break
try:
ival = int(num)
# This block will execute if no exception is caught.
# Yes, this is valid python.
if smallest is None: #first number!
smallest = ival
largest = ival
elif ival largest:
largest = ival
except ValueError: #and not all errors!
print ('Invalid input')
continue
print('Maximum is', largest)
print('Minimum is', smallest)
largest = None
smallest = None
while True:
num = input("Enter a number: ")
if num == 'done': break
try:
ival = int(num)
except ValueError:
print ('Invalid input')
continue
if smallest is None:
smallest = ival
largest = ival
elif ival largest:
largest = ival
print('Maximum is', largest)
print('Minimum is', smallest)
最大=无
最小=无
尽管如此:
num=输入(“输入一个数字:”)
如果num=='done':中断
尝试:
ival=int(num)
除值错误外:
打印('无效输入')
继续
如果最小值为无:
最小=ival
最大=ival
埃利夫·伊瓦尔:
最大=ival
打印(“最大值为”,最大值)
打印(“最小值为”,最小值)
代码:
请尝试此代码
largest = None
smallest = None
while True:
num = input("Enter a number: ")
if num == "done" :
break
try:
inp=float(num)
except:
print("Invalid input")
continue
for value in [7,2,10,4]:
if largest is None:
largest = value
elif value>largest:
largest=value
print("Maximum is", largest)
for value in [7,2,10,4]:
if smallest is None:
smallest = value
elif value < smallest:
smallest=value
print("Minimum is", smallest)
max=None
最小=无
尽管如此:
num=输入(“输入一个数字:”)
如果num==“完成”:
打破
尝试:
inp=浮点(num)
除:
打印(“无效输入”)
持续
对于[7,2,10,4]中的值:
如果最大值为无:
最大=值
elif值>最大值:
最大=值
打印(“最大值为”,最大值)
对于[7,2,10,4]中的值:
如果最小值为无:
最小=值
elif值<最小值:
最小=值
打印(“最小值为”,最小值)
以下是正确答案
最大=无
最小=无
inp_列表=[]
尽管如此:
inp=原始输入(“输入一个数字:”)
如果inp==“完成”:
打破
其他:
largest = None
smallest = None
while True:
num = input("Enter a number: ")
if num == "done" :
break
try:
inp=float(num)
except:
print("Invalid input")
continue
for value in [7,2,10,4]:
if largest is None:
largest = value
elif value>largest:
largest=value
print("Maximum is", largest)
for value in [7,2,10,4]:
if smallest is None:
smallest = value
elif value < smallest:
smallest=value
print("Minimum is", smallest)
largest = None
smallest = None
while True:
inp = raw_input("Enter a number: ")
if inp == "done" : break
try:
num = int(inp)
except ValueError: #and not all errors!
print ("Invalid input")
else:
# This block will execute if no exception is caught.
# Yes, this is valid python.
if smallest is None: #first number!
smallest = num
largest = num
elif num < smallest:
smallest = num
elif num > largest:
largest = num
print ("Maximum is", largest)
print ("Minimum is", smallest)
#by Aless
largest = None
smallest = None
while True:
num = input("Enter a number: ")
if num == "done" : break
try:
intNum = int(num)
except ValueError:
#print('Error: Invalid input', num)
print('Invalid input')
continue
else:
if (largest < intNum): largest = intNum
if (smallest > intNum) or (smallest is None): smallest = intNum
print("Maximum", largest)
print("Minimum", smallest)
largest = 0
smallest = None
while True:
num = input("Enter a number: ")
if num == "done" :
break
try:
num1=int(num)
if(num1>largest):
largest=num1
elif((smallest is None) or(num1<smallest)):
smallest=num1
except ValueError:
print("Invalid input")
continue
print("Maximum is", largest)
print("Minimum is",smallest)
largest = None
smallest = None
numbers = []
while True:
num = input("Enter a number: ")
if num == "done":
break
numbers.append(num)
for value in numbers:
try:
value = int(value)
if largest is None:
largest = value
elif value > largest:
largest = value
except:
continue
for value in numbers:
try:
value = int(value)
if smallest is None:
smallest = value
elif value < smallest:
smallest = value
except:
print ("Invalid input")
continue `
print("Maximum is", largest)
print("Minimum is", smallest)
largest = None
smallest = None
while True:
num = input("Enter a number: ")
if num == 'done': break
try:
ival = int(num)
# This block will execute if no exception is caught.
# Yes, this is valid python.
if smallest is None: #first number!
smallest = ival
largest = ival
elif ival>largest:
largest = ival
elif ival<smallest:
smallest=ival
except ValueError: #and not all errors!
print ('Invalid input')
continue
print('Maximum is', largest)
print('Minimum is', smallest)
largest = None
smallest = None
while True:
inp = input("Enter a number: ")
if inp == "done" : break
try:
num = float(inp)
except ValueError:
print ("Invalid input")
else:
if smallest is None:
smallest = num
largest = num
elif num < smallest:
smallest = num
elif num > largest:
largest = num
print ("Maximum is", int(largest))
print ("Minimum is", int(smallest))
largest = None
smallest = None
while True:
num = input("Enter a number: ")
if num == "done" :
break
try:
a = int(num)
except:
print("Invalid input")
continue
if a > largest:
largest = a
if smallest is None:
smallest = a
if a < smallest:
smallest = a
print("Maximum is", largest)
print("Minimum is", smallest)
7
2
bob
10
4
done
Invalid input
Maximum is 10
Minimum is 2