Build a Pin Extractor - Step 19

Tell us what’s happening:

My loop will not run for all 3 poems. Or atleast my secret code is not being appended properly, I changed the first poem to run in my final print line, and all the values look correct. I just do not understand why my secret code is not combining all 3 results correctly.

Your code so far


# User Editable Region

def pin_extractor(poems):
    secret_codes = []
    for poem in poems:
        secret_code = ''
        lines = poem.split('\n')
        for line_index, line in enumerate(lines):
            words = line.split()
            if len(words) > line_index:
                secret_code += str(len(words[line_index]))
            else:
                secret_code += '0'
        secret_codes.append(secret_code)
        return secret_codes
    return secret_codes


poem = """Stars and the moon
shine in the sky
white and
until the end of the night"""

poem2 = 'The grass is green\nhere and there\nhoping for rain\nbefore it turns yellow'
poem3 = 'There\nonce\nwas\na\ndragon'

poems = [poem, poem2, poem3]

print(pin_extractor([poem, poem2, poem3]))
# print(pin_extractor(poem))

# User Editable Region


Your browser information:

User Agent is: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/142.0.0.0 Safari/537.36

Challenge Information:

Build a Pin Extractor - Step 19

it will not because you have a return inside the loop.

You should not have a return inside the loop, as the return stops the function completely

In addition to having the return in the loop, take a look at this line:

poems = [poem, poem2, poem3]

Do you think this is needed?

code removed by moderator

not needed as the workshop specifically commands to list all 3 under the argument of pin_extractor.

hi @melvictor310

It is great that you solved the challenge, but instead of posting your full working solution, it is best to stay focused on answering the original poster’s question(s) and help guide them with hints and suggestions to solve their own issues with the challenge. How to Help Someone with Their Code Using the Socratic Method

We are trying to cut back on the number of spoiler solutions found on the forum and instead focus on helping other campers with their questions and definitely not posting full working solutions.