标题:Python问题
只看楼主
lielz
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2018-12-6
 问题点数:0 回复次数:4 
Python问题
编写一个程序需要比较用户输入的几个数值大小,用户输入“done”结束循环,输入字符时显示“invaild input”。
这个程序有问题吗
largest = None
smallest = None
while True:
    num = input("Enter a number: ")
    largest=num
    smallest=num
    try:
        for values in [num]:
            if largest<float(num):
                largest=float(num)
            
            
    except:
        print("Invalid input")
    if num == "done" : break
   

print("Maximum is",largest)
print("Minimum is",smallest)
搜索更多相关主题的帖子: Python 输入 input num print 
2018-12-06 19:17
闫哈哈
Rank: 1
等 级:新手上路
威 望:1
帖 子:4
专家分:7
注 册:2019-1-17
得分:0 
数据类型有问题, 运算符不能对字符串做处理.
收到的鲜花
  • 静夜思2019-01-22 01:47 送鲜花  1朵  

人生啊 地不熟
2019-01-17 11:22
apull
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:三体星系
等 级:版主
威 望:185
帖 子:1404
专家分:8479
注 册:2010-3-16
得分:0 
设计有问题,smallest 只是每次赋值,并没有参与比较,如果num是各序列,smallest也会是个序列,异常里的if放到前面。
异常里的if跟输入方式有很大关系,如果输入3,4,5,“done”,则需要用values==“done”,如果每次输入一个数字,则不需要for。
收到的鲜花
  • 静夜思2019-01-22 01:44 送鲜花  1朵  
2019-01-18 15:41
孙芸欣
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2019-2-10
得分:0 
2019-02-11 00:36
cc2017896543
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2019-2-26
得分:0 
回复 楼主 lielz
invaild(无效) input(输入)--- 那就说明定位到输入的地方 错误点就找到了,输入必须是一个int或者float 不可以是字符串哦。
2019-02-26 10:57



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-491868-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.312634 second(s), 9 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved