As many systems only supported 7-bit values, it was an attempt to retain usability in the event that software didn't support 8-bit values.
32.
A glyph is the graphical representation seen on your screen whereas a code point is an abstract value given to a Unicode character.
When encoding Unicode data, a string object is returned. Note that if you're using Python 3 then a bytes object is returned.
A Unicode object. However, as Python 3 strings are Unicode, you'll receive a string object for later versions of Python.
Not doing so can easily introduce bugs. You can wind up with a UTF encoded string type, or raise exceptions when writing data containing code points higher than 128.
Localization or L10n. Note the capital "L" used.
Because ordering of words may change in different languages. Using this syntax allows the translator to move the variable and not rely on positioning.
Plurals, for one. Consider English uses the "s" to signify plural, while Russian utilizes many endings to indicate plural. Gender, numbers, and tense all provide the same challenges.