2016-02-05 141 views
-4

這是我的python代碼打印絕對數字。我的功能是返回類型None。我沒有得到我做錯了什麼。請幫幫我。爲什麼我的函數返回數據類型無??:Python數據類型無

def n(num): 
    if num<0: 
     return (num*-1) 

no = input("Enter a number: ") 
print "Absolute Value is: " 
print n(no) 
+1

如果不明確地從一個函數返回的東西那麼Python隱含把'返回None'最後。 – Jkdc

+4

由於'num> = 0時不返回任何內容,所以返回默認值。默認值是'None'。 –

+0

如果你打電話給'n(42)',你會怎麼想呢? – njzk2

回答

1
def n(num): 
    if num<0: 
     return (num*-1) 
    else: 
     return num 


no = input("Enter a number: ") 
print "Absolute Value is: " 
print n(no) 

寫一個else語句將返回NUM> = 0

謝謝:)

0

return上的條件。嘗試:

def n(num): 
    if num<0: 
     num *= -1 
    return num 

no = int(input("Enter a number: ")) 
print "Absolute Value is: " 
print n(no) 
0

你真的不需要爲絕對值自己的函數...

no = input("Enter a number: ") 
print "Absolute Value is: ", abs(no) 
+0

謝謝你:)我不知道abs函數() –

+0

是的,有一個[內置函數]的整個表格(https://docs.python.org/2/library/functions.html) –