我與「認爲Python」練習,練習8.1是:的Python:傳遞函數參數字符串
「編寫一個函數,採用一個字符串作爲參數,並顯示落後的字母,每行一個。」
我能夠做到這個問題,以香蕉爲例,每行打印每個字母。
index = 0
fruit = "banana"
while index < len(fruit):
letter = fruit[len(fruit)-index-1]
print letter
index = index + 1
不過,我想這種情況推廣到任何輸入的話,我得到了這個問題,我的代碼是
index = 0
def apple(fruit):
while index < len(fruit):
letter = fruit[len(fruit)-index-1]
print letter
index = index + 1
apple('banana')
相應的錯誤是:
Traceback (most recent call last):
File "exercise8.1_mod.py", line 21, in <module>
apple('banana')
File "exercise8.1_mod.py", line 16, in apple
while index < len(fruit):
UnboundLocalError: local variable 'index' referenced before assignment
我想應該有與使用的函數參數有關的問題。任何幫助將不勝感激。
只要把你的'index = 0'放在你的函數中(在它的開頭)。 – BrenBarn
@BrenBarn如果你解釋他,他需要保持在裏面,這樣他才能瞭解局部和全局變量嗎? :) –