Coursera Python:面向所有人的编程作业 5.2
Coursera Python: Programming for everybody assignment 5.2
我一直在学习 Coursera 的课程,Python 为每个人编程。但是第 7 周的作业 5.2 中的一个引起了我的注意。
objective是让用户输入一些数字,当他输入所有他想要的数字时,就输入done。之后输出的应该是他输入的最大数和最小数。
问题来了。如果我输入负数,则不会显示。假设我输入:32、55、10、-2 76。输出应该是 76 和 -2。但真正发生的是打印出 76 和 10。
你们知道为什么会这样吗?
这是代码。
largest = None
smallest = None
while True:
try:
num = input("Enter a number: ")
if num == "done":
break
print (num)
num = int(num)
for number in range(num):
if largest is None or largest < num:
largest = num
continue
elif smallest is None or smallest > num:
smallest = num
except ValueError:
print("Please, enter only numbers.")
print ("Maximum", largest)
print ("Minimum", smallest)
好吧,问题是如果 int 不是列表,您为什么要对其进行迭代?
你可以不用循环来做:
largest = None
smallest = None
while True:
try:
num = input("Enter a number: ")
if num == "done":
break
print (num)
num = int(num)
if largest is None or largest < num:
largest = num
elif smallest is None or smallest > num:
smallest = num
except ValueError:
print("Please, enter only numbers.")
print ("Maximum", largest)
print ("Minimum", smallest)
输出:
Enter a number: 12
12
Enter a number: 56
56
Enter a number: 34
34
Enter a number: -2
-2
Enter a number: 17
17
Enter a number: done
Maximum 56
Minimum -2
好吧,这就是我的答案。试试这个。不明白的告诉我。
largest = None
smallest = None
while True:
try:
num = input("Enter a number: ")
if num == "done" :
break
num = int(num)
if largest is None or num > largest:
largest = num
elif smallest is None or num < smallest:
smallest = num
except ValueError:
print("Invalid input")
print("Maximum is", largest)
print("Minimum is", smallest)
此代码适用于您的作业
最大 = None
最小的 = None
而真实的:
尝试:
num = input("请输入一个数字:")
如果 num == “完成”:
休息
# 打印 (num)
num = int(num)
for number in range(num):
if largest is None or largest < num:
largest = num
continue
elif smallest is None or smallest > num:
smallest = num
except ValueError:
print("Invalid input")
print("最大为",最大)
print ("最小值是", 最小值)
我一直在学习 Coursera 的课程,Python 为每个人编程。但是第 7 周的作业 5.2 中的一个引起了我的注意。
objective是让用户输入一些数字,当他输入所有他想要的数字时,就输入done。之后输出的应该是他输入的最大数和最小数。
问题来了。如果我输入负数,则不会显示。假设我输入:32、55、10、-2 76。输出应该是 76 和 -2。但真正发生的是打印出 76 和 10。
你们知道为什么会这样吗?
这是代码。
largest = None
smallest = None
while True:
try:
num = input("Enter a number: ")
if num == "done":
break
print (num)
num = int(num)
for number in range(num):
if largest is None or largest < num:
largest = num
continue
elif smallest is None or smallest > num:
smallest = num
except ValueError:
print("Please, enter only numbers.")
print ("Maximum", largest)
print ("Minimum", smallest)
好吧,问题是如果 int 不是列表,您为什么要对其进行迭代? 你可以不用循环来做:
largest = None
smallest = None
while True:
try:
num = input("Enter a number: ")
if num == "done":
break
print (num)
num = int(num)
if largest is None or largest < num:
largest = num
elif smallest is None or smallest > num:
smallest = num
except ValueError:
print("Please, enter only numbers.")
print ("Maximum", largest)
print ("Minimum", smallest)
输出:
Enter a number: 12
12
Enter a number: 56
56
Enter a number: 34
34
Enter a number: -2
-2
Enter a number: 17
17
Enter a number: done
Maximum 56
Minimum -2
好吧,这就是我的答案。试试这个。不明白的告诉我。
largest = None
smallest = None
while True:
try:
num = input("Enter a number: ")
if num == "done" :
break
num = int(num)
if largest is None or num > largest:
largest = num
elif smallest is None or num < smallest:
smallest = num
except ValueError:
print("Invalid input")
print("Maximum is", largest)
print("Minimum is", smallest)
此代码适用于您的作业
最大 = None 最小的 = None 而真实的: 尝试: num = input("请输入一个数字:") 如果 num == “完成”: 休息 # 打印 (num)
num = int(num)
for number in range(num):
if largest is None or largest < num:
largest = num
continue
elif smallest is None or smallest > num:
smallest = num
except ValueError:
print("Invalid input")
print("最大为",最大) print ("最小值是", 最小值)