【发布时间】:2022-01-23 21:25:37
【问题描述】:
我的循环作业需要帮助!
我是 Python 3.7 的新手,遇到一个作业问题,需要我使用多个语句来查找用户输入的最小值和最大值。我知道我必须创建一个循环语句。但是,我卡在提示的第二部分。
我还必须创建一个 try + except 函数,这样当用户输入字符串时,就没有回溯了。
当我尝试编译时,我收到:
SyntaxError: 第 16 行的“返回”外部函数
能否有更高级的 Python 人士,看看我的语法 + 语句,让我知道其中一个地方是否有错误 + 下次要注意什么?
以下是显示原始硬件提示和我尝试解决它的两个屏幕截图。
largest = None
smallest = None
fval = float(val)
while True:
val = input("Enter a number: ")
fval = float(val)
if val == "done":
break
print(fval)
if smallest is None:
smallest = fval
elif fval > smallest :
fval = smallest
return fval
if largest is None:
largest = fval
elif fval > largest :
largest = fval
return fval
try :
int(astr)
except :
print("invalid output")
print("Minimum", smallest)
print("Maximum", largest)
非常感谢!
【问题讨论】:
-
请解释一下“不编译”是什么意思。你应该得到一个错误。请分享那个错误。快速浏览一下,错误的发生是因为您没有定义
astr,您尝试在第 24 行将其转换为int -
您好 Pranav,感谢您的帮助!我不断收到“语法错误:第 18 行的错误输入”,这是我的第二个 If 语句所在的位置(如果最大的是 None:)。另外,当您提到需要定义 asr 时,您是否建议在 try 和 except 语句上方将其定义为数值(例如,Astr=1?)或更具体的字符串(例如。Astr=Bob)?
标签: python-3.x loops syntax compiler-errors try-except