Python 處理字串資料

2018-07-25 11:39 更新

什么是字串?

Python 使用變數(shù)章節(jié)中,我們使用了 input 函式來讀取使用者的輸入,而 input 函式可以傳入一個(gè) 字串 作為顯示在屏幕上的提示訊息。字串資料可以是以單引號(hào)(')或雙引號(hào)(")包起來的 文字資料 ,相對(duì)于數(shù)值資料,字串就是用來表示文字的資料。

字串資料也可以儲(chǔ)存于變數(shù)中:

x = 'Hello, world'
print x

單引號(hào)及雙引號(hào)

在 Python 中,使用單引號(hào)(')或雙引號(hào)(")包起來的資料都是字串。然而,以單引號(hào)包起來的字串,如果在字串資料中遇到單引號(hào)時(shí),則必須以 \ 來跳脫(escape)處理,避免被誤認(rèn)為字串結(jié)束。

x = 'I\'m Eric.'
print x

這段程式碼就會(huì)正確地印出 "I'm Eric.",以此類推,若是在雙引號(hào)包起來的字串,碰到雙引號(hào)時(shí)也必須以 \ 跳脫。也因?yàn)?nbsp;\ 被用來作為跳脫字元處理,所以若是字串中有 \ 字元時(shí),就需要再用一個(gè) \ 跳脫:

file_path = 'C:\\Documents and Settings\\ericsk\\test.dat'
print file_path

這段程式碼就會(huì)印出「C:\Documents and Settings\ericsk\test.dat」。如果不想將 \ 作為跳脫字元使用,可以在字串前加上 r 前置字元,上面的程式碼就可以改成:

file_path = r'C:\Documents and Settings\ericsk\test.dat'
print file_path

效果也是一樣。

字串的運(yùn)算

字串資料也支援下列幾種運(yùn)算方式:

字串相加

兩個(gè)字串資料作相加(+)的運(yùn)算,代表將兩個(gè)字串資料串接起來:

x = 'Hello, '
y = 'World'
print x+y

這段程式碼會(huì)印出 Hello, World

產(chǎn)生重復(fù)字串

字串資料可以與整數(shù)進(jìn)行 * 的運(yùn)算,這表示要將字串重復(fù)幾次:

x = 'Cat'
print x * 3

這樣屏幕會(huì)輸出 CatCatCat

取出字串部份內(nèi)容

想要取出字串部份的內(nèi)容,不管是單一字元,或是一段范圍的字串,可以使用 [] 運(yùn)算子來操作:

x = 'Hello, World.'
print x[7]
print hello[0:6]

這段程式碼會(huì)分別在屏幕上印出 "W" 及 "Hello,"。字串的索引位置是*從 0 開始,所以 x[7] 表示要取出 x 這個(gè)字串的*第8個(gè)字元,也就是 W;而取范圍時(shí)只需要設(shè)定左邊界及右邊界,要注意的是,字串只會(huì)取至右邊界前一個(gè)字元,并不包含右邊界,于是 [0:6] 就是從第 1 個(gè)字元取到第 6 個(gè)字元,并不會(huì)包含 x[6]

[] 運(yùn)算子的索引也可以使用負(fù)整數(shù),也就是從字串最右邊開始算索引:

x = 'Hello, World.'
print x[-2]
print x[4:-3]

則會(huì)印出 "d" 及 "o, Wor"。

計(jì)算字串長(zhǎng)度

如果要計(jì)算字串的長(zhǎng)度,直接使用 len() 函式就可以了。

x = 'Hello, World.'
print len(x)

就會(huì)在屏幕上印出 13。

Unicode 字串

在 Python 2.x 版里,字串預(yù)設(shè)是以 ASCII 編碼儲(chǔ)存,如果要以 unicode 編碼來儲(chǔ)存字串,只需要在字串前面加上一個(gè) u 作為前置字串:

x = u'Hi,\u0020Eric'
print x

這就會(huì)印出 "Hi, Eric"

Python 3 之后,字串預(yù)設(shè)都是以 unicode 儲(chǔ)存

試試看

  • 試試看在字串中使用 \n\t 有什么效果。
  • u'Hi,\u0020Eric' 的字串長(zhǎng)度為何?那 'Hi\nEric' 呢?

下一步

在取出部份字串時(shí),我們使用了 [] 運(yùn)算子來操作,這是把字串當(dāng)作「一串文字」來看待,所以可以用索引的方式取出字串。在 Python 中有一個(gè)基本處理資料的結(jié)構(gòu)--List,可以處理排列在一起的數(shù)值或文字資料,在下一章節(jié)中將會(huì)介紹如何使用 Python 中的 List 及 Tuple。


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)