Coursera Python:为每个人分配编程5.2

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Coursera Python:为每个人分配编程5.2相关的知识,希望对你有一定的参考价值。

我一直在学习Coursera课程,用Python编程为每个人编写。但第7周的任务之一5.2引起了我的注意。

目标是当用户输入他想要的所有数字时,输入一些数字并输入完成。之后,输出应该是他输入的最大数字和最小数字。

这是问题所在。如果我输入负数,则不会显示。假设我输入: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

以上是关于Coursera Python:为每个人分配编程5.2的主要内容,如果未能解决你的问题,请参考以下文章

stanford coursera 机器学习编程作业 exercise 5(正则化线性回归及偏差和方差)

Coursera课程《大家的Python》中一些资料

机器学习- 吴恩达Andrew Ng Coursera学习总结合集,编程作业技巧合集

机器学习- 吴恩达Andrew Ng Coursera学习总结合集,编程作业技巧合集

coursera 《现代操作系统》 -- 第九周 文件系统

期末考试——编程题#5:字符串插入