Build a Pin Extractor - Step 17

Tell us what’s happening:

You should move the existing body of the function into the new for loop. This error is poping

Your code so far


# User Editable Region

def pin_extractor(poems):
    secret_code = ''
    for poem in poems:
        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'
    return secret_code

# User Editable Region


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'

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

Your browser information:

User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36

Challenge Information:

Build a Pin Extractor - Step 17

Welcome to the forum @maria.ameer98 ,

Did you move the entire existing body of the function inside the for loop, preserving indentation?

Happy coding!

Though i moved all content, its giving same error

def pin_extractor(poems):

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'

    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’

# print(pin_extractor(poem))