簡體   English   中英

嘗試在python中阻止

[英]try block in python

我是否正確使用try塊?

try:
    def add(num1, num2):
        return(float(num1) + float(num2))
except ValueError:
    return(None)
else:
    return(add(num1, num2))

我正在使用樹屋,並收到錯誤消息,任務1不再通過,這意味着我的def add(num1,num2)出了問題,這是我在正確的地方嘗試的方法嗎? 它說:“在將參數變為浮點數之前添加一個try塊。”

try-except塊放置在函數內。

例如:

def add(num1, num2):
    try:
        return (float(num1) + float(num2))
    except ValueError:
        return None

try需要在函數定義內,而無需else。 基本上,except用作try的else。

def add(num1, num2):
    try:
        return(float(num1) + float(num2))
    except ValueError:
        return(None)

你應該做:

def add(num1, num2):
    try:
        return float(num1)+float(num2)
    except:
        return None

問題是您試圖創建一個函數,但是在該函數之外返回值,對於else語句,該函數甚至在那時都沒有定義,您正在調用它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM