python - Python代码返回错误取决于IDE
问题描述
我正在做一门课程,代码是练习之一。
编写一个程序,反复提示用户输入整数,直到用户输入“完成”。输入“完成”后,打印出最大和最小的数字。如果用户输入的不是有效数字,请使用 try/except 捕获它并发出适当的消息并忽略该数字。输入 7、2、bob、10 和 4 并匹配下面的输出。
我相信我找到了正确的代码来传递任务——它在 Pycharm 中运行良好,但是当我尝试在 Web IDE 上提交它时,它返回不同的值。有人可以解释为什么会这样吗?
我正在使用 Pycharm 并在 www.py4e.com 网站上尝试过(返回不同的输出)。
largest = None
smallest = None
while True:
num = input("Enter number:")
if num == 'done':
break
try:
num = int(num)
except:
print("Invalid input")
if smallest is None or num < smallest:
smallest = num
if largest is None or largest > num:
largest = num
print("Maximum", largest)
print("Minimum", smallest)
在 Pycharm 中,它返回:
最大值为 10
最小值为 2
在 www.py4e.com 它返回:
最大值为 2
最小值为 2
解决方案
更改最大数字的条件,并将 if 语句放在 try 块中,如下所示,否则它将在接受另一个输入之前中断。
largest = None
smallest = None
while True:
num = input("Enter number:")
if num == 'done':
break
try:
num = int(num)
if smallest is None or num < smallest:
smallest = num
if largest is None or largest < num:
largest = num
except:
print("Invalid input")
print("Maximum", largest)
print("Minimum", smallest)
推荐阅读
- jdbc - JDBC JMeter,参数化一个表
- javascript - 未捕获的类型错误:firebase.auth(...).setPersistence(...).signInWithPopup 不是函数
- javascript - 如何在不重新加载页面的情况下使用 angularJS 更改浏览器地址栏中的 URL
- python - AttributeError:“列表”对象在 Spyder 中没有属性“值”
- php - 查找空白数组并取消设置/删除对象
- python - 将推文翻译成英文
- docker - Centos docker 代理端口 - 防火墙
- git - 存储库 [名称] 已停用,无法重复使用
- flutter - 如何使用修复项目列表设置 Streambuilder
- c++ - C++ 是否保证参数评估的原子性?