小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

Exercise 10: What Was That?

 集微軒 2013-08-04

In Exercise 9 I threw you some new stuff, just to keep you on your toes. I showed you two ways to make a string that goes across multiple lines. In the first way, I put the characters \n (back-slash n) between the names of the months. What these two characters do is put a new line character into the string at that point.

This use of the \ (backslash) character is a way we can put difficult-to-type characters into a string. There are plenty of these "escape sequences" available for different characters you might want to put in, but there's a special one, the double backslash, which is just two of them \\. These two characters will print just one backslash. We'll try a few of these sequences so you can see what I mean.

Another important escape sequence is to escape a single-quote ' or double-quote ". Imagine you have a string that uses double-quotes and you want to put a double-quote in for the output. If you do this "I "understand" joe." then Python will get confused since it will think the " around "understand" actually ends the string. You need a way to tell Python that the " inside the string isn't a real double-quote.

To solve this problem you escape double-quotes and single-quotes so Python knows to include in the string. Here's an example:

"I am 6'2\" tall."  # escape double-quote inside string
'I am 6\'2" tall.'  # escape single-quote inside string

The second way is by using triple-quotes, which is just """ and works like a string, but you also can put as many lines of text as you want until you type """ again. We'll also play with these.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
tabby_cat = "\tI'm tabbed in."
persian_cat = "I'm split\non a line."
backslash_cat = "I'm \\ a \\ cat."

fat_cat = """
I'll do a list:
\t* Cat food
\t* Fishies
\t* Catnip\n\t* Grass
"""

print tabby_cat
print persian_cat
print backslash_cat
print fat_cat

What You Should See

Look for the tab characters that you made. In this exercise the spacing is important to get right.

$ python ex10.py
   I'm tabbed in.
I'm split
on a line.
I'm \ a \ cat.

I'll do a list:
   * Cat food
   * Fishies
  * Catnip
  * Grass

Escape Sequences

This is the list of all of the escape sequences Python supports. You may not use many of these, but memorize their format and what they do anyway. Also try them out in some strings to see if you can make them work.

Escape What it does.
\\ Backslash ()
\' Single-quote (')
\" Double-quote (")
\a ASCII bell (BEL)
\b ASCII backspace (BS)
\f ASCII formfeed (FF)
\n ASCII linefeed (LF)
\N{name} Character named name in the Unicode database (Unicode only)
\r ASCII Carriage Return (CR)
\t ASCII Horizontal Tab (TAB)
\uxxxx Character with 16-bit hex value xxxx (Unicode only)
\Uxxxxxxxx Character with 32-bit hex value xxxxxxxx (Unicode only)
\v ASCII vertical tab (VT)
\ooo Character with octal value ooo
\xhh Character with hex value hh

Here's a tiny piece of fun code to try out:

while True:
    for i in ["/","-","|","\\","|"]:
        print "%s\r" % i,

Study Drills

  1. Memorize all the escape sequences by putting them on flash cards.
  2. Use ''' (triple-single-quote) instead. Can you see why you might use that instead of """?
  3. Combine escape sequences and format strings to create a more complex format.
  4. Remember the %r format? Combine %r with double-quote and single-quote escapes and print them out. Compare %r with %s. Notice how %r prints it the way you'd write it in your file, but %s prints it the way you'd like to see it?

Common Student Questions

I still haven't completely figured out the last exercise. Should I continue?
Yes, keep going and instead of stopping take notes listing things you don't understand for each exercise. Periodically go through your notes and see if you can figure these things out after you've completed more exercises. Sometimes though you may need to go back a few exercises and go through them again.
What makes \\ special compared to the other ones?
It's simply the way you would write out one backslash (\) character. Think about why you would need this.
When I write // or /n it doesn't work.
That's because you are using a forward-slash / and not a backslash \. They are different characters that do very different things.
When I use a %r format none of the escape sequences work.
That's because %r is printing out the raw representation of what you typed, which is going to include the original escape sequences. Use %s instead. Always remember this: %r is for debugging, %s is for displaying.
I don't get Study Drills #3. What do you mean by "combine" escapes and formats?
One of the things I try to get you to understand is that each of these exercises can be combined to solve problems. Take what you know about format sequences and write some new code that uses those and the escapes from this exercise.
What's better, ''' or """?
It's entirely based on style. Go with the ''' (triple-single-quote) style for now but be ready to use either depending on what feels best or what everyone else is doing.

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多