FAQ: Learn Python - Pyglatin - Ending Up



This community-built FAQ covers the “Ending Up” exercise in Codecademy’s lessons on Python.

FAQs for the Codecademy Python exercise Ending Up:

Join the Discussion. We Want to Hear From You!

Have a new question or can answer someone else’s? Reply (reply) to an existing thread!

Agree with a comment or answer? Like (like) to up-vote the contribution!

Need broader help or resources about Python in general? Go here!

Want to take the conversation in a totally different direction? Join our wider discussions.

Learn more about how to use this guide.

Found a bug? Report it!

Have a question about your account, billing, Pro, or Pro Intensive? Reach out to our support team!

None of the above? Find out where to ask other questions here!


Other FAQs

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 (search) in the top-right of this page. Still can’t find it? Ask it below by hitting the reply button below this post (reply).


2 posts were split to a new topic: “String Index Out of Range” Error


I don’t understand the second part of the example in this lesson:

s = "Charlie"

print s[0]
# will print "C"

print s[1:4]
# will print "har"

Why when we write

print s[1:4]

It returns only 3 letters (har), but not 4 letters (harl) from the example word above…


[0] = C
[1] = H
[2] = A
[3] = R
[4] = L

It stops TIL position 4, meaning [4] does not get processed.
[0:1] would give you C


I am confused by the slice on ‘new_word’.
What we want is the ‘rest’ of word,
isn’t it?
So, mutating new_word seems a bad idea, and I guess it only works because at the time
new_word = word[1:len(new_word)]...
is called, new_word does not have a length yet,
so - the slice goes to the end of word because in fact no second slice parameter is given??
If new_word already existed, it would contain ‘ay’ etc and would be longer than ‘word’.

So, my question is, should we not better use
new_word = word[1:len(word)]
? Thanks.