def am_i_alive():
hit_points = 20
if hit_points == 0:
print 'dead'
elif hit_points <= 5:
print 'almost dead'
else:
print 'alive'
am_i_alive()
- 您需要
def
關鍵字來定義一個函數。
- 您需要使用
==
而不是=
進行比較。
- 如果使用
elif
表示陳述,則鏈接。
除此之外,它看起來不錯。在正確和將編譯。它將始終產生相同的價值。
一個更好的辦法來做到這一點是:
def am_i_alive(hit_points):
if hit_points == 0:
print 'dead'
elif hit_points <= 5:
print 'almost dead'
else:
print 'alive'
am_i_alive(20)
am_i_alive(3)
am_i_alive(0)
在這裏,我們傳遞一個「說法」的功能。我們稱之爲am_i_alive(x)
,其中x
可以是任何數字。在函數am_i_alive
的代碼中,無論我們用什麼來代替x
都成爲hit_points
所指的值。
函數也可以帶兩個參數。 (實際上最多255個參數)
def am_i_alive(hit_points, threshold):
if hit_points == 0:
print 'dead'
elif hit_points <= threshold:
print 'almost dead'
else:
print 'alive'
am_i_alive(20, 5)
am_i_alive(3, 2)
am_i_alive(0, 10)
您能理解上一個版本的作用嗎?
我沒有讀它,因爲蟒蛇不是我的第一語言,但我被告知這是一個非常好的introduction to python and programming。
你的單元測試用例在哪裏?如果你會寫一些測試用例,你會知道錯誤是什麼,不是嗎? – 2010-09-17 10:02:31
@ S.Lott在代碼顯示的情況下,我會說它是它自己的單元測試;) – aaronasterling 2010-09-17 18:22:35