<< Chapter < Page | Chapter >> Page > |
In triple-quoted strings, unescaped newlines and quotes are allowed (and are retained), except that three unescaped quotes in a row terminate thestring. (A "quote" is the character used to open the string, i.e. either ' or".)
When I pressed the Enter key as described above , I entered an unescaped newline .
One of the main advantages of using triple-quoted strings is that this makes it possible to
This is illustrated in Figure 3 , which shows my name, surrounded by matching triple quotes and split onto twoconsecutive lines of input.
Figure 3 . Triple-quoted strings with newlines. |
---|
>>>"""Dick
Baldwin"""'Dick\nBaldwin'>>> |
When this triple quoted, multiple-line input was displayed, by the interpreter, the display included "\n".
This is an "escape character" representation of the newline character. It appeared in the output at the point representing the end of the first line of input. This indicates that theinterpreter knows and remembers that the input string was split across two lines.
Numerically, the newline character is represented by the following:
In case you are interested, very early versions of Python produced the following output for the input shown in Figure 3 :
'Dick\012Baldwin'
In those days, the newline character was represented by a backslash followed by its octal representation. (If you don't know what octal means, don't worry about it. It was effectively superseded by hexadecimal about twenty yearsago.)
As the name implies, a newline character is a character that means, "Go to the beginning of the next line."
The newline character is sort of like the wind. You can't see the wind, but you can see the result of the wind blowing through a tree.
Similarly, you can't normally see a newline character, but you can see what it does. Therefore, we must represent it bysomething else, like \n if we want to be able to see where it appears within a string.
The \n is what we call an escape sequence . I will discuss escape sequences in detail a little later in this module.
The Python Language Reference -- 2.4.1. String and Bytes literals describes one more syntax option for strings as shown below. I am going to let this one lie for the time being. I will come backand address it in a future module if I have the time. I am including it here simply for completeness.
Both string and bytes literals may optionally be prefixed with a letter 'r' or 'R'; such strings are called raw strings and treat backslashes as literal characters. As a result, in string literals, '\U' and '\u' escapes in raw strings are not treated specially. Given that Python 2.x's raw unicode literals behave differently than Python 3.x's the 'ur' syntax is not supported.
Notification Switch
Would you like to follow the 'Itse 1359 introduction to scripting languages: python' conversation and receive update notifications?