2016-04-11 13 views
1

Der folgende Code zählt die Menge "fizz" in einer Liste und funktioniert aus irgendeinem Grund nicht. Es soll in diesem Fall 1 zurückgeben, aber es gibt 0 zurück. Das liegt wahrscheinlich an einem sehr einfachen Fehler, aber ich kann es einfach nicht herausfinden. Danke für die Hilfe!Python-Funktion mit einem Argument funktioniert nicht

def fizz_count(x): 
    count = 0 
    for whatever in x: 
     if x == "fizz": 
      count += 1 
    return count 

fizz_count(["fizz","buzz"]) 

Antwort

1

Die Variable sollten Sie hier prüfen ist, was auch immer:

def fizz_count(x): 
    count = 0 
    for whatever in x: 
     if whatever == "fizz": 
      count += 1 
    return count 

fizz_count(["fizz","buzz"]) 

Zum Debuggen Ich schlage vor, dass Sie mit dem Drucken Sachen in Ihrer Funktion versuchen. Wie hier hätte dir ein einfacher Druck (x) die Idee gegeben, was falsch läuft.

4

Es ist nur ein kleiner Fehler. In Ihrer for-Schleife vergleichen Sie die gesamte iterierbare/Liste x mit 'fizz'. Ändern Sie diese Zeile zu

if whatever == 'fizz': 
Verwandte Themen