官术网_书友最值得收藏!

3.3 字符串類(lèi)型

僅有數(shù)字類(lèi)型在日常生活中顯然是不夠的,為了更方便地對(duì)文本數(shù)據(jù)和對(duì)象進(jìn)行處理,Python中引入了我們?cè)谄渌Z(yǔ)言也熟悉的數(shù)據(jù)類(lèi)型——String。

3.3.1 字符串的定義

在創(chuàng)建字符串時(shí),需要用引號(hào)來(lái)進(jìn)行聲明。Python提供了單引號(hào)、雙引號(hào)、三引號(hào)三種方式來(lái)定義字符串。實(shí)例如下。

【例3-20】單引號(hào)定義字符串。

另外,Python還允許引號(hào)間的嵌套,例如,單引號(hào)可被嵌套進(jìn)雙引號(hào)。同時(shí)這種多引號(hào)的表達(dá)方式還可以解決某些書(shū)寫(xiě)的兼容問(wèn)題。

【例3-21】雙引號(hào)定義字符串。

在此實(shí)例中英語(yǔ)書(shū)寫(xiě)語(yǔ)句中的'被雙括號(hào)兼容但是卻被單引號(hào)錯(cuò)誤識(shí)別。因此在實(shí)際使用中,即使引號(hào)間沒(méi)有區(qū)別,還是需要根據(jù)實(shí)際使用情況進(jìn)行選擇。

另外,三引號(hào)的使用方法也較為特殊,三引號(hào)允許換行,輸出自動(dòng)多行拼接。但是單引號(hào)和雙引號(hào)就不允許換行,實(shí)例如下。

【例3-22】三引號(hào)定義字符串。

在字符串的定義過(guò)程中,也可能遇到如下情況:

可以看到,字符串被從中間換行了。這就是接下來(lái)要介紹的“轉(zhuǎn)義字符”。

在上述實(shí)例中,\n為轉(zhuǎn)義字符,代表?yè)Q行。Python的常見(jiàn)轉(zhuǎn)義字符及其含義如表3-9所示。

表3-9 轉(zhuǎn)義字符

轉(zhuǎn)義字符在書(shū)寫(xiě)格式上提供了很大的便利性,但是如果并不想讓轉(zhuǎn)義字符對(duì)應(yīng)的字符起作用,而是單純的正常顯示,可以在字符串前加上r或者將轉(zhuǎn)義字符的\用\\替換。實(shí)例如下。

【例3-23】屏蔽字符。

3.3.2 字符串格式化

不同于數(shù)字類(lèi)型的操作,字符串的操作更加多樣化,和其他語(yǔ)言一樣,字符串的基本操作——格式化輸出,依舊是重點(diǎn)。格式化輸出是計(jì)算機(jī)語(yǔ)言必不可少的部分。

格式符存在的目的是為真實(shí)值進(jìn)行占位,方便控制顯示輸出的格式。格式符主要有以下類(lèi)別,如表3-10所示。

表3-10 格式化操作符

對(duì)Python的輸出可以進(jìn)一步進(jìn)行控制,采用如下方式。

其格式含義如下。

其中的格式參數(shù)內(nèi)容如下。

  •  name:命名可以選擇,用于指定key。
  •  flags:對(duì)齊方式,表示右對(duì)齊,-表示左對(duì)齊,0表示用0填充,若為空格則表示正數(shù)左側(cè)填充空格。
  •  width:顯示寬度。
  •  precision:小數(shù)點(diǎn)后精度。
  •  typecode:格式化操作符。

具體實(shí)例如下。

【例3-24】格式化輸出數(shù)值。

Python中內(nèi)置的%操作符可用于格式化字符串操作,控制字符串的輸出。Python中還有其他的格式化字符串的方式,但%操作符是最基礎(chǔ)最方便的。

其他的還有在后面將會(huì)講到的format()方法。

3.3.3 字符串內(nèi)置的函數(shù)

Python為字符串操作提供了全面而多樣的內(nèi)置函數(shù),涉及字符串的替換、刪除、復(fù)制、拼接、比較和查找等各個(gè)方面。下面來(lái)了解部分常用的函數(shù)。

(1)字符串的搜索和替換。

包括以下內(nèi)置的函數(shù),如表3-11所示。

表3-11 字符串的搜索和替換的內(nèi)置函數(shù)

使用范例如下。

【例3-25】字符串替換函數(shù)。

需要注意的是,字符串的位置查找返回的下標(biāo)中,字符串第一個(gè)字符的下標(biāo)被定義為0。

(2)字符串去空格。

字符串去空格的函數(shù)如表3-12所示。

表3-12 字符串去空格的函數(shù)

因?yàn)榉椒ê?jiǎn)單,故不再列舉實(shí)例。

(3)字符串判斷。

字符串判斷的函數(shù)如表3-13所示。

表3-13 字符串判斷的函數(shù)

(4)字符串的分割截取。

【例3-26】字符串分割截取。

(5)字符串的拼接。

Pyhton提供了str.join()方法來(lái)進(jìn)行字符串的拼接操作。實(shí)例如下。

【例3-27】字符串拼接。

主站蜘蛛池模板: 康保县| 神农架林区| 泰安市| 丹棱县| 宁安市| 应城市| 县级市| 博客| 岱山县| 贵溪市| 南澳县| 平安县| 五常市| 铁力市| 教育| 古交市| 沙雅县| 武平县| 吉安县| 建瓯市| 郸城县| 克什克腾旗| 长乐市| 尉氏县| 钦州市| 西城区| 衡山县| 盘山县| 南雄市| 广东省| 调兵山市| 霍城县| 达州市| 中江县| 灵宝市| 江油市| 海城市| 凭祥市| 林口县| 鹤峰县| 古丈县|