簡體   English   中英

使用try,但在Python中的函數內部除外

[英]using try, except inside a function in Python

使用try,但以下代碼中的函數內部除外,可以產生正確的結果。

def try_function():
    try:
        hrs = float(raw_input("Enter Hours: "))
        rate = float(raw_input("Enter Rate: "))
        return hrs * rate
    except:
        print "Values are non numeric"
        quit()

pay = try_function()
print pay

我得到以下結果:

Enter Hours: 20
Enter Rate: 10
200.0

雖然如果我將代碼更改為以下內容,則不會得到結果:

def try_function():
    try:
        hrs = float(raw_input("Enter Hours: "))
        rate = float(raw_input("Enter Rate: "))
    except:
        print "Values are non numeric"
        quit()
    return hrs * rate

pay = try_function()
print pay

這是我得到的:

Enter Hours: 20
Enter Rate: 10

我不知道為什么我沒有得到值200,第一種或第二種哪種方法更好?

謝謝。

也許您對制表符和縮進空格的混合存在問題。 檢查您的縮進是否一致。

例如,如果某些行用制表符縮進,有些行用空格縮進,則在視覺上,縮進看起來可能是正確的,但是Python解釋縮進的方式與其在編輯器中的顯示方式不同。

您可以嘗試使用-t選項運行Python,如果選項卡和空格縮進混合使用,則會發出警告。 例如:

python -t myprogram.py

暫無
暫無

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

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