Build a Pin Extractor - Step 17

Tell us what’s happening:

Step 17
Update the function argument to be poems, then create a for loop around all the current content of the function that iterates over poems and uses poem as loop variable.
used the below code still not working:
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_inde

Your code so far


# User Editable Region

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_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))

Your browser information:

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

Challenge Information:

Build a Pin Extractor - Step 17

GitHub Link: https://github.com/freeCodeCamp/freeCodeCamp/blob/main/curriculum/challenges/english/blocks/workshop-pin-extractor/68599f0fc7479410b2269742.md

Tell us what’s happening:

I am tired of trying and wasting my time, the same code works on VS code but not here, it’s giving an error: "You should move existing body of function into the new for loop.

Your code so far


# User Editable Region

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_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))

Your browser information:

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

Challenge Information:

Build a Pin Extractor - Step 17

GitHub Link: freeCodeCamp/curriculum/challenges/english/blocks/workshop-pin-extractor/68599f0fc7479410b2269742.md at main · freeCodeCamp/freeCodeCamp · GitHub

Welcome to the forum @nasir500,

Is this line inside the for loop?

Happy coding

I went ahead and combined your posts for you. In the future, just reply to the original thread to add further updates.

now this is the whole loop, did you move everythng inside the loop?