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

  • Deal with strings that occupy more than one line.
  • Deal with all of the lines that make up the string as a unit.
  • Preserve newline characters that separate the lines in the process.

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'>>>

The newline (\n) character

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:

  • 10 in decimal
  • A in hexadecimal
  • 012 in octal
  • 00001010 in binary
Historical note:

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

Representing the newline character

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.

An escape sequence

The \n is what we call an escape sequence . I will discuss escape sequences in detail a little later in this module.

One more syntax option

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.

Get Jobilize Job Search Mobile App in your pocket Now!

Get it on Google Play Download on the App Store Now




Source:  OpenStax, Itse 1359 introduction to scripting languages: python. OpenStax CNX. Jan 22, 2016 Download for free at https://legacy.cnx.org/content/col11713/1.32
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Itse 1359 introduction to scripting languages: python' conversation and receive update notifications?

Ask