簡體   English   中英

檢查字符串在特定單詞中出現的次數

[英]Check how many times a string appears in a particular word

我正在這個網站上練習我的 python 編碼。 這就是問題

Return True if the string "cat" and "dog" appear 
the same number of times in the given string. 

cat_dog('catdog') → True
cat_dog('catcat') → False
cat_dog('1cat1cadodog') → True

這是我的代碼,由於某些未知原因,我沒有通過所有測試用例。 我在調試時遇到問題

def cat_dog(str):

    length=len(str)-2
    i=0
    catcount=0
    dogcount=0



    for i in range (0,length):
        animal=str[i:i+2]

        if ("cat" in animal):
            catcount=catcount+1

        if ("dog" in animal):
            dogcount=dogcount+1

    if (dogcount==catcount):
        return True
    else:
        return False

你不需要創建一個函數,一行就足夠了。比如:

return s.count('cat') == s.count('dog')

沒有循環的替代方案:

> def cat_dog(str):
>     total_len = len(str)
>     cat = str.replace("cat", "")
>     dog = str.replace("dog", "")
>     if len(cat) == len(dog):
>       if len(cat) < len(str):
>         if len(dog) < len(str):
>           return True
>     if len(cat) == len(str) and len(dog) == len(str):
>       return True
> 
>     else: return False
def cat_dog(str): count_cat = str.count('cat') count_dog = str.count('dog') if count_cat == count_dog: return True else: return False

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM