算法: - 逐個遍歷 word1 中的每個字符。如果此字符出現在 word2 中,則將計數加 1。完成字符后返回總計數。>>>count_common_occurrences('bob y', 'bobbette z') 3>>>count_common_occurrences('bobbette z', 'bob y') 4這是我的代碼def count_common_occurrences(word1, word2): count = 0 for i in word1.strip(): if i in word2.strip(): count = count + 1 return count我得到的結果總是比示例大一,我最初懷疑函數計數空間,所以我使用了 strip 但之后結果仍然相同。我不知道是什么導致函數比它應該的多一個
1 回答

慕運維8079593
TA貢獻1876條經驗 獲得超5個贊
它將空格字符計為匹配項,因此返回的結果比您預期的多一個。
最簡單的解決方法是檢查空格字符并跳過它。
def count_common_occurrences(word1, word2):
count = 0
for i in word1.strip():
if i != ' ':
if i in word2.strip():
count = count + 1
return count
print(count_common_occurrences('bob y', 'bobbette z'))
print(count_common_occurrences('bobbette z', 'bob y'))
添加回答
舉報
0/150
提交
取消