所以我要找出這個代碼有什麼問題,顯然我沒有看到任何錯誤,因爲我剛剛學習了python。Python函數錯誤字符串索引超出範圍
此外,當我運行該功能,它會給我一個錯誤"String Index out of range"
。
而我要測試這是否有效。
那麼,什麼似乎是錯的,我應該如何測試它們?
def is_reverse_of(st1, st2):
"""
is_reverse_of : String String -> Boolean
is_reverse_of tells if one string is the reverse of another.
preconditions: st1 and st2 are character strings.
"""
if len(st1) != len(st2):
return False
i = 0
j = len(st2)
while j > 0:
if st1[i] != st2[j]:
return False
else:
i += 1
j -= 1
return True
這是我到目前爲止的測試
def test_is_reverse_of():
"""
a suite of pass/fail test cases to validate that is_reverse_of works.
"""
# Complete this test function.
st1 = str(input("Enter the string: "))
st2 = str(input("Enter the string: "))
is_reverse_of(st1, st2)
檢查'[j]'索引政策。嘗試訪問長度爲len(aString)== j'的字符串的第j個元素失敗,因爲索引是從零開始的---'aString [0]'...'aString [len-1 ]' – user3666197 2014-09-28 01:02:07
'input'已經是一個字符串,所以不需要轉換和'如果st1 [i]!= st2 [j-1]:'將解決你的索引錯誤 – 2014-09-28 01:09:16