[英]difference using recursive functions python
我有包含隨機字母的列表。
def similarity(out_list):
i=0
count=0
while i<len(out_list):
if out_list[i][-1]==out_list[i+1][-1]:
count+=1
return similarity(out_list[i][:-1]) + count
elif out_list[i][-1]!=out_list[i+1][-1]:
return similarity(out_list[i][:-1])
i+=2
out_list=["ABABA","ACA","AGAGA","AAVA","XBX","ARAA","AADA","AAA","BABAB","ABA"]
similarity(out_list)
在我的代碼中,我試圖找出第一和第二,第三和第四等列表元素之間的區別。
但是,由於我的函數是遞歸的,所以i的值始終為0,並且我無法控制其他元素,也找不到差異。
對於ABABA和ACA,差異為3,因為第一個A和第三個A在相同索引的兩個詞中都是相同的。因此,差異5-2 = 3
我的代碼需要進行哪些更改? 謝謝。
考慮將i作為參數傳遞給遞歸函數,而不是在函數開始時將其設置為0。 您可能也想做一些類似的事情。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.