| 网站首页 | 业界新闻 | 小组 | 交易 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
买学问 - 大牛一对一辅导,有问必答买学问 - 专业的付费知识问答平台
共有 594 人关注过本帖
标题: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)
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: 10Rank: 10Rank: 10
来 自:三体星系
等 级:贵宾
威 望:23
帖 子:504
专家分:1614
注 册: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







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

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