Hi there again.
You still need to be looking carefully at which variable you are using for what purpose:
i is a temporary holder for each word as you go through the loop
new_word is the array you use for holding the words as passed from the main program; you don’t need to change this once you created it; and
appending to it is not what you mean to do.
result is where you should be collecting the words that you have censored or passed. It is an array, so this is where you should
append the words one at a time.
Also, don’t forget to append the okay words — you have commented out that part for some reason.
return statement is now in the right place, but the
result = " ".join is still part of the
for loop. In Python you have to pay close attention to how the lines line up vertically!
To help with debugging, put something like this in the loop so that you see what is going on:
print ("i =", i, "; new_word = ", new_word, "; result = ", result)
but remember to take them out again afterwards once it’s working.
Getting closer I think!!