The following are links to additional questions that our community has asked about this exercise:
This list will contain other frequently asked questions that aren’t quite as popular as the ones above.
Currently there have not been enough questions asked and answered about this exercise to populate this FAQ section.
This FAQ is built and maintained by you, the Codecademy community – help yourself and other learners like you by contributing!
Not seeing your question? It may still have been asked before – try () in the top-right of this page. Still can’t find it? Ask it below by hitting the reply button below this post ().
Hi. It kept telling me there was an unexpected indent at “return count” but if I backspaced it “return count” would be outside the function. I was pretty sure I was doing it correctly and sure enough I copied the code pressed solution pasted my code under it and they are exactly the same. Now I don’t know if something is wrong with my code or just codeacademy. I had similar issues in past lessons(can’t rememebr which) where it told me there was an indentation error when there was in fact no indentation error. I remembered to indent where I needed. I copied and pasted the code and sure no eugh my code was the same.
I have a similar problem, although mine is for the “for” line. I also checked my work against the solution (including indentation!) and it should be correct. Buggy tutorial?
# Write your function below!
def fizz_count(x):
count = 0
for item in count:
if item == 'fizz':
count = count + 1
return count
fizz = ['fizz','cat','fizz']
total = fizz_count(fizz)
print total
I keep getting
Traceback (most recent call last):
File "python", line 10, in <module>
File "python", line 4, in fizz_count
TypeError: 'int' object is not iterable
Hey, the exercise itself is going to input the ‘[“fizz”,“cat”,“fizz”]’ inside of your “x”.
Also, you have a mistake in your for loop. Check the code below to see if you can identify your mistake.
def fizz_count(x):
count = 0
for n in x:
if n == 'fizz':
count = count + 1
return count
So I now have to type the entire url? Please copy paste the url to the forum, makes access a lot easier.
If there is indeed a problem in the solution, having the exercise url makes reporting the bug a lot easier
But feels more like the code you wrote, contains a mistake. Your return is nested within your for loop, so the moment a match has been found, return keyword is reached, which will signal that the function is done executing
def count_small(numbers):
total = 0
for n in numbers:
if n < 10:
total = total + 1
return total
lotto = [4, 8, 15, 16, 23, 42]
small = count_small(lotto)
print small
This is an example code from the lesson. I don’t understand how
‘numbers’ is being defined here. Seeing as numbers is suppose to be the list/dictionary that the variable n is suppose to be checked for.
If you’re posting code to the forums, please see- How do I format code in my posts? as it makes reading and interpreting your text much easier for everyone else.
In this example the function is defined with one parameter called numbers. When you call your function here you pass a single argument, in this case a list [4, 8, 15, 16, 23, 42].
This effectively assigns that object to the name numbers inside the function, equivalent to the following- numbers = lotto.
Each time you call that function with a different argument you assign something different to numbersinside the function (it is forgotten as soon as the function exits).
To be more explicit you can specify the parameter in the function call such that-
small = count_small(lotto)
# is equivalent to-
small = count(numbers=lotto)
numbers is a parameter. A parameter is the variable that is defined within the parenthesis of the function definition. You can name the parameters anything you want excluding keywords such as: def count(foo) or def count(n): In this case numbers is just a parameter that represents the list/dictionary that the variable n is checking. Hope this helps!