day03-python中的字符串

01-認(rèn)識(shí)字符串

1往堡、字符串:用單引號(hào)或者雙引號(hào)括起來(lái)的字符集械荷。例如:'ljjj$345是'。
字符:字符串中的每個(gè)獨(dú)立的單元我們叫字符虑灰。

2吨瞎、轉(zhuǎn)義字符:通過(guò)\將一些特殊的字符轉(zhuǎn)換成具有特殊功能的字符。常見(jiàn)的轉(zhuǎn)義字符有:\n(換行)穆咐、\t(tab制表符)颤诀、\(反斜杠\)、'(單引號(hào))对湃、"(雙引號(hào))等崖叫。轉(zhuǎn)義字符的長(zhǎng)度為1。

3拍柒、Unicode編碼:python中字符的編碼采用的是Unicode編碼归露。Unicode使用兩個(gè)字節(jié)對(duì)一個(gè)字符進(jìn)行編碼。Unicode編碼包含ASCII碼斤儿。

編碼:將字符轉(zhuǎn)換成指定的數(shù)值,以便計(jì)算機(jī)做存儲(chǔ)操作恐锦。解碼:將數(shù)值轉(zhuǎn)換成對(duì)應(yīng)的符號(hào)往果。

在這里,涉及到兩個(gè)函數(shù):1)一铅、將Unicode碼轉(zhuǎn)換成字符:chr()陕贮;2)、將字符轉(zhuǎn)換成Unicode編碼:ord();
例子:

# 1)潘飘、將Unicode碼轉(zhuǎn)換成字符:chr()
print(chr(0xA000))
print(chr(0xa001))
print(chr(0x4e00))

#2)肮之、將字符轉(zhuǎn)換成Unicode編碼:ord()
print(hex(ord('哈')),hex(ord('嘍')))

結(jié)果:


字符與編碼相互轉(zhuǎn)換.png

02-獲取字符

1、獲取單個(gè)字符

python中的字符串卜录,可以通過(guò)下標(biāo)來(lái)獲取指定位置上的字符戈擒;

格式:字符串[下標(biāo)]
注意:字符串可以是字符串值,也可以是字符串變量艰毒;下標(biāo)可以是從0開(kāi)始到字符串長(zhǎng)度減1筐高;也可以是-1到-長(zhǎng)度(-1就是對(duì)應(yīng)的最后一個(gè)字符,以此類(lèi)推丑瞧,-長(zhǎng)度對(duì)應(yīng)的就是第一個(gè)字符)柑土;最后,索引不能越界绊汹,否則會(huì)報(bào)錯(cuò)稽屏。

例子:

str1='abcd'
print(str1[0])
#print(str[4])錯(cuò)誤
print(str[-4])
print(str[-1])

結(jié)果:


獲取單個(gè)字符.png

2、獲取部分字符(子串)--切片
格式:字符串[下標(biāo)1:下標(biāo)2]:從下標(biāo)1開(kāi)始獲取到下標(biāo)2前的所有的字符西乖。
例子:

str2='hello world'
print(str2[0:4])
print(str2[2:-1])
print('abcdabcd'[0:8])#切片時(shí)狐榔,下標(biāo)可以越界坛增,越界時(shí)就取臨界值。

結(jié)果:


切片.png

格式2:字符串[下標(biāo)1:下標(biāo)2:步進(jìn)]
解釋?zhuān)簭南聵?biāo)1開(kāi)始獲取荒叼,每次下標(biāo)值增加步進(jìn)值轿偎,每增加一次獲取一個(gè)字符,直到取到下標(biāo)2前為止被廓。
(如果步進(jìn)是正數(shù)坏晦,那么下標(biāo)1對(duì)應(yīng)的字符的位置一定要在下標(biāo)2對(duì)應(yīng)的位置的前面;如果是負(fù)數(shù)嫁乘,那么下標(biāo)1的位置在下標(biāo)2的后面昆婿;)
例子:

str2='helloworld!'
print(str3[0:5:3])
print(str3[0:5])
print(str3[-1:5:-1])

帶步進(jìn)的字符串獲取.png

下標(biāo)的省略

例子:

#切片時(shí)蜓斧,下標(biāo)1和下標(biāo)2是可以省略的仓蛆。
#下標(biāo)1省略:默認(rèn)從開(kāi)頭開(kāi)始獲取(開(kāi)頭可能是字符串的第一個(gè)字符挎春,也可能是最后一個(gè)字符看疙。)
str4='good good study,day day up'
print(str4[:4])
print(str4[:4:-1])
#下標(biāo)2省略:從下標(biāo)1位置開(kāi)始獲取,獲取到結(jié)束(結(jié)束可能是字符串的最后一個(gè)字符直奋,也可能是第一個(gè)字符)
print(str4[1:])
print(str4[3::-1])
print(str4[::-1])

結(jié)果:


下標(biāo)省略.png

03-字符串相關(guān)運(yùn)算

1能庆、+運(yùn)算:python中支持兩個(gè)字符串相加,其結(jié)果就是將兩個(gè)字符串進(jìn)行拼接脚线,最后產(chǎn)生一個(gè)新的字符串搁胆。

2、*運(yùn)算:
格式:字符串*整數(shù)
就是將整數(shù)個(gè)字符串拼接在一起產(chǎn)生一個(gè)新的字符串邮绿。

3渠旁、支持所有的比較運(yùn)算符(==、船逮!=顾腊、>、<)
注意:在比較大小時(shí)挖胃,比較的是兩個(gè)字符串中每一位字符的編碼值投慈,直到不同為止。

4冠骄、in和not in:判斷字符串之間是否包含伪煤。結(jié)果為bool值。

5凛辣、獲取字符串長(zhǎng)度
使用len()內(nèi)置函數(shù)來(lái)獲取抱既。空串('')的長(zhǎng)度為0扁誓;

6防泵、阻止轉(zhuǎn)義
在字符串的最前面添加r或者R可以阻止轉(zhuǎn)義蚀之。


04-字符串中的相關(guān)函數(shù)方法

python中為字符串提供了很多內(nèi)建函數(shù)。
調(diào)用方式:字符串.函數(shù)名()
注意:函數(shù)的功能不會(huì)影響原來(lái)的字符串捷泞,而是產(chǎn)生一個(gè)新的字符串足删。

print('abCd'.capitalize())#將字符串中的第一個(gè)字符轉(zhuǎn)換成大寫(xiě),如果后面有大寫(xiě)锁右,將其轉(zhuǎn)換成小寫(xiě)失受;
print('abc'.center(10,'0'))#產(chǎn)生一個(gè)長(zhǎng)度為10,字符串a(chǎn)bc居中咏瑟,其余以0來(lái)填充的字符串拂到;
print('abaa'.count('a'))#返回a在字符串a(chǎn)baa中出現(xiàn)的次數(shù);
print('abc'.endswith('c'))#檢查字符串是否已字符c結(jié)尾.返回true或者false
print('abc'.find('abd'))#檢查是否包含字符串码泞,返回0或-1
print('abc12'.isalnum())#如果字符串至少有一個(gè)字符并且所有字符都是字符或數(shù)字則返回 True,否則返回 False
print('abc1'.isdigit())#字符串是否只包含數(shù)字
print('asfD34'.islower())#字符串中的字母是否都是小寫(xiě)
print('bs23'.isnumeric())#字符串中是否只有數(shù)字
print('  \n'.isspace())#字符串中是否只有空白
print('Tdd Fsss'.istitle())#字符串中所有的單詞的首字母是否大寫(xiě)兄旬,其余為小寫(xiě)
print('DDD34'.isupper())#字符串中的字母都為大寫(xiě)字母
print(len('dda'))#返回字符串長(zhǎng)度
print('1'.ljust(3,'0'))#左對(duì)齊
print('DDD'.lower())#將大寫(xiě)轉(zhuǎn)換成小寫(xiě)
print(max('bdc'))#返回字符串中最大的字母
print(min('bda'))#返回字符串中最小的字母
print('1'.rjust(3,'0'))#右對(duì)齊
print('  fds  a   '.rstrip())#刪除末尾的空白
print('  fds  a   '.lstrip())#刪除開(kāi)頭的空白
print('  fds  a   '.strip())#刪除開(kāi)頭和結(jié)尾的空白
print('world'.title())#將字符串標(biāo)題化就是單詞首字母大寫(xiě)
print('worldD'.upper())#將小寫(xiě)字母轉(zhuǎn)換成大寫(xiě)

05-字符串格式化

python支持格式化字符串的輸出。
基本用法:將一個(gè)值插入到一個(gè)有字符串格式符%s的字符串中余寥。
例子

print('我的名字是%s今年%d歲'%('小李',20))

結(jié)果:


格式化字符串.png

python中常用的字符串格式化符號(hào)有:
%c-----格式化字符及其ASCII碼
%s-----格式化字符串
%d-----格式化整數(shù)
%u-----格式化無(wú)符號(hào)整型
%o-----格式化無(wú)符號(hào)八進(jìn)制數(shù)
%x-----格式化無(wú)符號(hào)十六進(jìn)制數(shù)
%X-----格式化無(wú)符號(hào)十六進(jìn)制數(shù)(大寫(xiě))
%f-----格式化浮點(diǎn)數(shù)字
%e-----格式化科學(xué)計(jì)數(shù)法的浮點(diǎn)數(shù)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末领铐,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子宋舷,更是在濱河造成了極大的恐慌绪撵,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,270評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件肥缔,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡汹来,警方通過(guò)查閱死者的電腦和手機(jī)续膳,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,489評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)收班,“玉大人坟岔,你說(shuō)我怎么就攤上這事∷よ耄” “怎么了社付?”我有些...
    開(kāi)封第一講書(shū)人閱讀 165,630評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)邻耕。 經(jīng)常有香客問(wèn)我鸥咖,道長(zhǎng),這世上最難降的妖魔是什么兄世? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,906評(píng)論 1 295
  • 正文 為了忘掉前任啼辣,我火速辦了婚禮,結(jié)果婚禮上御滩,老公的妹妹穿的比我還像新娘鸥拧。我一直安慰自己党远,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,928評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布富弦。 她就那樣靜靜地躺著沟娱,像睡著了一般。 火紅的嫁衣襯著肌膚如雪腕柜。 梳的紋絲不亂的頭發(fā)上济似,一...
    開(kāi)封第一講書(shū)人閱讀 51,718評(píng)論 1 305
  • 那天,我揣著相機(jī)與錄音媳握,去河邊找鬼碱屁。 笑死,一個(gè)胖子當(dāng)著我的面吹牛蛾找,可吹牛的內(nèi)容都是我干的娩脾。 我是一名探鬼主播,決...
    沈念sama閱讀 40,442評(píng)論 3 420
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼打毛,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼柿赊!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起幻枉,我...
    開(kāi)封第一講書(shū)人閱讀 39,345評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤碰声,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后熬甫,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體胰挑,經(jīng)...
    沈念sama閱讀 45,802評(píng)論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,984評(píng)論 3 337
  • 正文 我和宋清朗相戀三年椿肩,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了瞻颂。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,117評(píng)論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡郑象,死狀恐怖贡这,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情厂榛,我是刑警寧澤盖矫,帶...
    沈念sama閱讀 35,810評(píng)論 5 346
  • 正文 年R本政府宣布,位于F島的核電站击奶,受9級(jí)特大地震影響辈双,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜柜砾,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,462評(píng)論 3 331
  • 文/蒙蒙 一辐马、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦喜爷、人聲如沸冗疮。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,011評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)术幔。三九已至,卻和暖如春湃密,著一層夾襖步出監(jiān)牢的瞬間诅挑,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,139評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工泛源, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留拔妥,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,377評(píng)論 3 373
  • 正文 我出身青樓达箍,卻偏偏與公主長(zhǎng)得像没龙,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子缎玫,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,060評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • 一硬纤、字符串 1.字符串的基本知識(shí) 要點(diǎn): 使用單/雙引號(hào)括起來(lái)的字符集就是字符串如:'56''sdff''#$#d...
    HavenYoung閱讀 642評(píng)論 0 6
  • 1.字符串 字符串:使用單引號(hào)或雙引號(hào)括起來(lái)的字符集就是字符串,引號(hào)中單獨(dú)的符號(hào)、數(shù)字赃磨、字母筝家、空格等叫字符。 例:...
    FansYuercero閱讀 413評(píng)論 0 7
  • 1.什么是字符串 a.使用單引號(hào)或者雙引號(hào)括起來(lái)的字符集就是字符串邻辉。 b.引號(hào)中單獨(dú)的符號(hào)溪王、數(shù)字、字母等叫字符 c...
    PIECE_MAN閱讀 1,514評(píng)論 0 6
  • 1.什么是字符串 a.使用單引號(hào)或者或者雙引號(hào)括起來(lái)的字符集就是字符串b.引號(hào)中單獨(dú)的符號(hào)值骇、數(shù)字莹菱、字母等叫字符c....
    小先生_8bfd閱讀 423評(píng)論 0 3
  • 我愿化作一棵樹(shù), 長(zhǎng)在你必經(jīng)過(guò)的路旁. 陽(yáng)光下雷客, 滿(mǎn)心歡喜的讓小花開(kāi)滿(mǎn)枝椏芒珠, 也許不夠美桥狡, 但朵朵都是我對(duì)你的期盼...
    止語(yǔ)靜默閱讀 930評(píng)論 1 3