国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

[Learning Python] Chapter 7 String Fundamentals

baoxl / 674人閱讀

摘要:此時(shí)不要在這里面的右邊加入,否則會(huì)被當(dāng)做。,這個(gè)式子可以將二進(jìn)制數(shù),轉(zhuǎn)換為十進(jìn)制的。需要注意的是,需要加上,表示。下面,表示括號(hào)內(nèi)的第一個(gè)參數(shù),表示第二個(gè)參數(shù)。

1, 字符串的連接concatenate有兩種方式:
A:直接寫在一起:

</>復(fù)制代碼

  1. >>> title = "Meaning " "of" " Life" # Implicit concatenation
  2. >>> title
  3. "Meaning of Life"

B:使用+號(hào)

2,raw string: 在string前面加r,就會(huì)是string的不再具有轉(zhuǎn)義功能。
應(yīng)該注意的是,如果str的末尾是, Python仍然會(huì)將這個(gè) 和它后面的引號(hào)轉(zhuǎn)義輸出。這時(shí)候就不要用raw string了。

3,Triple quotes code multiline block strings: 三個(gè)引號(hào)(單引號(hào)或者雙引號(hào))可以做創(chuàng)造多行的strings。此時(shí)不要在這里面的右邊加入comment,否則會(huì)被當(dāng)做string。

4,triple quotes還可以用來暫時(shí)的是某段代碼disable。如下面:

</>復(fù)制代碼

  1. X = 1
  2. """
  3. import os # Disable this code temporarily
  4. print(os.getcwd())
  5. """
  6. Y = 2

5,字符串可以進(jìn)行切片操作,以截取某段字符:

</>復(fù)制代碼

  1. >>> S = "spam"
  2. >>> S[0], S[?2] # Indexing from front or end 進(jìn)行index操作
  3. ("s", "a")
  4. >>> S[1:3], S[1:], S[:?1] # Slicing: extract a section
  5. ("pa", "pam", "spa") # slice操作

6,切片的時(shí)候,包括寫在左邊的值,不包括寫在右邊的值。

7,三個(gè)參數(shù)的切片,X[I:J:K], 其中K表示步進(jìn)step,如果不寫K,則表示K位默認(rèn)值+1.

8,步進(jìn)可以是復(fù)數(shù),這樣的切片將得到倒著的字符串:

例子一:步進(jìn)step = -1,獲得倒序的字符串‘olleh’。

</>復(fù)制代碼

  1. >>> S = "hello"
  2. >>> S[::.1] # Reversing items
  3. "olleh"

例子二:這里仍然包括offset 5,不包括offset 1,該記住:切片包括寫在左邊的offset,不包括寫在右邊的offset。

</>復(fù)制代碼

  1. >>> S = "abcedfg"
  2. >>> S[5:1:?1] # Bounds roles differ
  3. "fdec"

9,切片有時(shí)候可以用于截取文本中的某行字。通常來講,每一行的結(jié)尾都是n,使用[:-1]即可以把n這個(gè)byte給去掉。雖然,人們更常用的是line.rstrip方法,因?yàn)橛锌赡苣承械男心┪幢赜衝.

10,ord()可以將某個(gè)字符轉(zhuǎn)換為ASCII碼,而chr則可以將ASCII碼還原為所對(duì)應(yīng)的字符。

11,int(‘1101’,2) 這個(gè)式子可以將二進(jìn)制數(shù)1101,轉(zhuǎn)換為十進(jìn)制的integer。需要注意的是,1101需要加上‘’,2表示base。

12,string有個(gè)replace的方法,可以用來產(chǎn)生新的string。

</>復(fù)制代碼

  1. >>> S = "splot"
  2. >>> S = S.replace("pl", "pamal")
  3. >>> S
  4. "spamalot"

如果想要讓Python只替換i次,需要填寫它的第三個(gè)參數(shù):

</>復(fù)制代碼

  1. >>> S.replace("SPAM", "EGGS", 1) # Replace one
  2. "xxxxEGGSxxxxSPAMxxxx"

13,雖然string是immutable sequence, 需要做in-place change的話還是可以先將string轉(zhuǎn)換為list,在用’’.join(some_list)的方法生成一個(gè)新的string。

14,string有一個(gè)split方法,可以將string以某特定的分界符將string切細(xì),并返回一個(gè)list。

例子一:split()里面沒有參數(shù),代表的是whitespce(空格, 制表位,換行等,數(shù)量不限)

</>復(fù)制代碼

  1. >>> line = "aaa bbb ccc"
  2. >>> cols = line.split()
  3. >>> cols
  4. ["aaa", "bbb", "ccc"]

例子二:以逗號(hào)作為分界符,將string切細(xì)并返回一個(gè)list。

</>復(fù)制代碼

  1. >>> line = "bob,hacker,40"
  2. >>> line.split(",")
  3. ["bob", "hacker", "40"]

15,string的其他有用的方法:rstrip、upper、isalpha、endswith、startswith

16,格式化string有兩種方法:
A: 類似于C語言的方法,String formatting expressions: "...%s..." % (values)
B: 從C#/.NET引進(jìn)的方法:
String formatting method calls: "...{}...".format(values)

17, 針對(duì)方法A,下面的表格是格式的說明:

18,在%左邊的格式是這樣的:
%(keyname)widthtypecode
Keyname表示如果是dictionary的引用,這里寫dictionary的key;
Flags: -號(hào)表示向左靠齊,0表示補(bǔ)零
Width 表示總共的位數(shù)
.precision 表示小數(shù)點(diǎn)右邊要有多少位小數(shù)

19,下面的例子表示暫時(shí)不知道要有多少位小數(shù),待傳入值得時(shí)候確定:

</>復(fù)制代碼

  1. >>> "%f, %.2f, %.*f" % (1/3.0, 1/3.0, 4, 1/3.0)
  2. "0.333333, 0.33, 0.3333" #這里最后選擇了4位小數(shù)。

20,dictionary可以作為參數(shù)傳入到這樣的式子中:

</>復(fù)制代碼

  1. >>> "%(qty)d more %(food)s" % {"qty": 1, "food": "spam"}
  2. "1 more spam"

21,B方法:string format method 有如下4種基礎(chǔ)類型:
Pass

22,更加復(fù)雜的如下面這種:

</>復(fù)制代碼

  1. >>> somelist = list("SPAM")
  2. >>> somelist
  3. ["S", "P", "A", "M"]
  4. >>> "first={0[0]}, third={0[2]}".format(somelist)
  5. "first=S, third=A"

23, A 方法使用 % 例子大全:

23.1 如果有兩個(gè)參數(shù),需要用括號(hào)將他們包圍起來,括號(hào)前加%

</>復(fù)制代碼

  1. >>> "That is %d %s bird!" % (1, "dead") # Format expression
  2. That is 1 dead bird!

23.2 賦給一個(gè)variable代替%后面的內(nèi)容

</>復(fù)制代碼

  1. >>> exclamation = "Ni"
  2. >>> "The knights who say %s!" % exclamation # String substitution
  3. "The knights who say Ni!"

23.3 所有類型都可以使用%s,因?yàn)樗械膐bject都可以轉(zhuǎn)換為string。

</>復(fù)制代碼

  1. >>> "%s -- %s -- %s" % (42, 3.14159, [1, 2, 3]) # All types match a %s target
  2. "42 -- 3.14159 -- [1, 2, 3]"

23.4 –號(hào)表示向左靠齊。0表示用0補(bǔ)夠數(shù),6表示總共有6位

</>復(fù)制代碼

  1. >>> x = 1234
  2. >>> res = "integers: ...%d...%?6d...%06d" % (x, x, x)
  3. >>> res
  4. "integers: ...1234...1234 ...001234"

23.5 小數(shù)點(diǎn)后面的數(shù)字表示小數(shù)位數(shù)

</>復(fù)制代碼

  1. >>> "%?6.2f | %05.2f | %+06.1f" % (x, x, x)
  2. "1.23 | 01.23 | +001.2"

23.6 %配合字典dictionary使用

</>復(fù)制代碼

  1. >>> "%(qty)d more %(food)s" % {"qty": 1, "food": "spam"}
  2. "1 more spam"

23.7 字典配合使用

</>復(fù)制代碼

  1. >>> reply = """
  2. Greetings...
  3. Hello %(name)s!
  4. Your age is %(age)s
  5. """
  6. >>> values = {"name": "Bob", "age": 40} # Build up values to substitute
  7. >>> print(reply % values) # Perform substitutions
  8. Greetings...
  9. Hello Bob!
  10. Your age is 40

23.8字典配合使用

</>復(fù)制代碼

  1. >>> template = "%(motto)s, %(pork)s and %(food)s"
  2. >>> template % dict(motto="spam", pork="ham", food="eggs")
  3. "spam, ham and eggs"

24 B方法例子

24.1通過絕對(duì)位置

</>復(fù)制代碼

  1. >>> template = "{0}, {1} and {2}" # By position
  2. >>> template.format("spam", "ham", "eggs")
  3. "spam, ham and eggs"

24.2 通過key,可以不用引號(hào)

</>復(fù)制代碼

  1. >>> template = "{motto}, {pork} and {food}" # By keyword
  2. >>> template.format(motto="spam", pork="ham", food="eggs")
  3. "spam, ham and eggs"

24.3 混合

</>復(fù)制代碼

  1. >>> template = "{motto}, {0} and {food}" # By both
  2. >>> template.format("ham", motto="spam", food="eggs")
  3. "spam, ham and eggs"

24.4 通過相對(duì)位置

</>復(fù)制代碼

  1. >>> template = "{}, {} and {}" # By relative position
  2. >>> template.format("spam", "ham", "eggs") # New in 3.1 and 2.7
  3. "spam, ham and eggs"

24.5 字典,屬性一起混合使用,下面的1表示format括號(hào)里的第2個(gè)參數(shù),0表示字典里的第一個(gè)參數(shù)。

</>復(fù)制代碼

  1. >>> import sys
  2. >>> "My {1[kind]} runs {0.platform}".format(sys, {"kind": "laptop"})
  3. "My laptop runs win32"
  4. >>> "My {map[kind]} runs {sys.platform}".format(sys=sys, map={"kind": "laptop"})
  5. "My laptop runs win32"

24.6 下面,0表示format()括號(hào)內(nèi)的第一個(gè)參數(shù),1表示第二個(gè)參數(shù)。冒號(hào)后面是格式,>號(hào)表示向左靠齊,<表示向左靠齊,10表示的是總需要十位

</>復(fù)制代碼

  1. >>> "{0:>10} = {1:<10}".format("spam", 123.4567)
  2. " spam = 123.4567 "

24.7 如果冒號(hào)前面不寫,則按照相對(duì)位置替換。

</>復(fù)制代碼

  1. >>> "{:>10} = {:<10}".format("spam", 123.4567)
  2. " spam = 123.4567 "

24.8 在格式的位置用e f g來約束

</>復(fù)制代碼

  1. >>> "{0:e}, {1:.3e}, {2:g}".format(3.14159, 3.14159, 3.14159)
  2. "3.141590e+00, 3.142e+00, 3.14159"
  3. >>> "{0:f}, {1:.2f}, {2:06.2f}".format(3.14159, 3.14159, 3.14159)
  4. "3.141590, 3.14, 003.14"

24.9 在格式的位置用x,o,b來約束,進(jìn)而顯示十六進(jìn)制、八進(jìn)制、二進(jìn)制數(shù)

</>復(fù)制代碼

  1. >>> "{0:X}, {1:o}, {2:b}".format(255, 255, 255) # Hex, octal, binary
  2. "FF, 377, 11111111"

24.10 這里的1對(duì)應(yīng)的是括號(hào)里的4,表示的是小數(shù)位數(shù)

</>復(fù)制代碼

  1. >>> "{0:.{1}f}".format(1 / 3.0, 4) # Take value from arguments
  2. "0.3333"

24.11 在d前面,或者e,f,g等前面加上逗號(hào),可以每三個(gè)數(shù)用逗號(hào)隔開

</>復(fù)制代碼

  1. >>> "{0:,d}".format(999999999999)
  2. "999,999,999,999"

24.12 逗號(hào)要寫在小數(shù)點(diǎn)的前面,如果他們都需要用到的話

</>復(fù)制代碼

  1. >>> "{:,.2f}".format(296999.2567)
  2. "296,999.26"

24.13 顯示tuple

</>復(fù)制代碼

  1. >>> "{0}".format((1.23,)) # Single value that is a tuple
  2. "(1.23,)"

24.14 用關(guān)鍵字,對(duì)應(yīng)于format里面的關(guān)鍵字

</>復(fù)制代碼

  1. >>> "{num:d} = {title:s}".format(num=7, title="Strings")
  2. "7 = Strings"

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/38327.html

相關(guān)文章

  • [Learning Python] Chapter 4. Introducing Python Ob

    摘要:可以連接,可以重復(fù)可以將兩個(gè)連接在一起可以重復(fù)任意次數(shù)如中,號(hào)作用于表示連接,而作用于數(shù)字表示加法,操作符的作用會(huì)根據(jù)其作用的對(duì)象而有所適應(yīng)。中的對(duì)象被分類為和。針對(duì)的核心類型,數(shù)字字符串和都是的。 1, >>> len(str(3)) 結(jié)果是1,len不能對(duì)數(shù)字求值,需要先將數(shù)字轉(zhuǎn)換為str 2, math模塊中,有許多工具可以用來計(jì)算數(shù)學(xué)問題。使用math模塊,先導(dǎo)入math: i...

    CHENGKANG 評(píng)論0 收藏0
  • [Learning Python] Chapter 6: The Dynamic Typing In

    摘要:,可以對(duì)對(duì)象進(jìn)行自動(dòng)地回收。如下,這種情況的發(fā)生表示隨改變了,應(yīng)該意識(shí)到這個(gè)問題。代表引用相同則返回,否則,返回。這個(gè)判斷會(huì)更加嚴(yán)格。的值為的兩個(gè)量,其必定也是。,和指向了不同的。,由于會(huì)存儲(chǔ)一些小的和小的以方便重新利用。 1, 在Python中,類型永遠(yuǎn)跟隨object,而非variable。Variable沒有類型。 2,在下面的三個(gè)式子中,a首先被賦予整形3,再被賦予字符串‘sp...

    lily_wang 評(píng)論0 收藏0
  • [Learning Python] Chapter 8 Lists and Dictionaries

    摘要:,如何一個(gè)方法一使用方法二使用方法方法三使用方法,按升序或降序排列表示升序表示降序和會(huì)返回。而僅能刪除一個(gè)。使用方法可以避免這樣的錯(cuò)誤導(dǎo)致程序出現(xiàn)。,在中,的方法返回的不再是。不過可以使用強(qiáng)迫它們組成一個(gè)。 Chapter 8 Lists and Dictionaries1, list的concatenation 和 repetition 操作: >>> [1, 2, 3] + [4,...

    gekylin 評(píng)論0 收藏0
  • [Learning Python] Chapter 5 Numeric Types

    摘要:,可以用十進(jìn)制十六進(jìn)制八進(jìn)制二進(jìn)制來表示。由實(shí)數(shù)虛數(shù)組成。,在中,八進(jìn)制可以以開頭,但是在中,不能以開頭,一定要以或者開頭,位的運(yùn)算表示位向左移動(dòng)表示位向右移動(dòng)表示或運(yùn)算表示運(yùn)算表示異或運(yùn)算兩者不同為,相同為可以用方法計(jì)算二進(jìn)制數(shù)有多少位。 1, 在Python 2.x 中。Python的integer,有兩種類型,normal和long。Normal通常是32位的。Long表示無限精...

    yuxue 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<