[Python] (Day-06) - 字符串

Make everything as simple as possible, but not simpler?—?Albert Einstein 把每件事就轧,做簡(jiǎn)單到極致嚷炉,但又不過(guò)于簡(jiǎn)單 - 阿爾伯特·愛(ài)因斯坦

字符串是 Python 中最常用的數(shù)據(jù)類型哟旗。

我們可以使用引號(hào)''""來(lái)創(chuàng)建字符串碟联。

str = 'Hello World!'
name = "Mazy"

訪問(wèn)字符串中的值

格式:字符串[下標(biāo)位置 / 范圍]

print(str)
print(name)
print(str[4])
print(name[1:3])

執(zhí)行結(jié)果:

Hello World!
Mazy
o
az

轉(zhuǎn)義字符

在字符中使用特殊字符時(shí)脑豹,需要使用轉(zhuǎn)義字符進(jìn)行轉(zhuǎn)義

轉(zhuǎn)義字符 描述
\(在行尾時(shí)) 續(xù)行符
\\ 反斜杠符號(hào)
\' 單引號(hào)
\" 雙引號(hào)
\a 響鈴
\b 退格(Backspace)
\e 轉(zhuǎn)義
\000
\n 換行
\v 縱向制表符
\t 橫向制表符
\r 回車
\f 換頁(yè)

字符串運(yùn)算符

下表實(shí)例變量a值為字符串 "Hello"抗愁,b變量值為 "Python":

操作符 描述 實(shí)例
+ 字符串連接 a + b 輸出結(jié)果: HelloPython
* 重復(fù)輸出字符串 a*2 輸出結(jié)果:HelloHello
[] 通過(guò)索引獲取字符串中字符 a[1] 輸出結(jié)果 e
[:] 截取字符串中的一部分 a[1:4] 輸出結(jié)果 ell
in 成員運(yùn)算符 - 如果字符串中包含給定的字符返回 True H in a 輸出結(jié)果 1
not in 成員運(yùn)算符 - 如果字符串中不包含給定的字符返回 True M not in a 輸出結(jié)果 1
r/R 原始字符串:所有的字符串都是直接按照字面的意思來(lái)使用馁蒂,沒(méi)有轉(zhuǎn)義特殊或不能打印的字符 print(r'\n'), 結(jié)果為"/n"
% 格式字符串 請(qǐng)看下面的格式化輸入內(nèi)容
a = "Hello"
b = "Python"

print("a + b 輸出結(jié)果:", a + b)
print("a * 2 輸出結(jié)果:", a * 2)
print("a[1] 輸出結(jié)果:", a[1])
print("a[1:4] 輸出結(jié)果:", a[1:4])

if ("H" in a):
    print("H 在變量 a 中")
else:
    print("H 不在變量 a 中")

if ("M" not in a):
    print("M 不在變量 a 中")
else:
    print("M 在變量 a 中")

print(r'\n')
print(R'\n')

以上實(shí)例輸出結(jié)果為:

a + b 輸出結(jié)果: HelloPython
a * 2 輸出結(jié)果: HelloHello
a[1] 輸出結(jié)果: e
a[1:4] 輸出結(jié)果: ell
H 在變量 a 中
M 不在變量 a 中
\n
\n

字符串格式化

符 號(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ù)字,可指定小數(shù)點(diǎn)后的精度
%e 用科學(xué)計(jì)數(shù)法格式化浮點(diǎn)數(shù)
%E 作用同%e驹愚,用科學(xué)計(jì)數(shù)法格式化浮點(diǎn)數(shù)
%g %f和%e的簡(jiǎn)寫(xiě)
%G %f 和 %E 的簡(jiǎn)寫(xiě)
%p 用十六進(jìn)制數(shù)格式化變量的地址

格式化實(shí)例:


intro = "我叫 %s 今年 %d 歲!" % ('小明', 10)
print(intro) // "我叫 小明 今年 10 歲!"

# 另外一種格式化方法
intro1 = "my name is {name}, and i am {age} old"
# 格式化字符串
intro1.format(name='Mazy',age=21) // "my name is Mazy, and i am 21 old"

字符串基本內(nèi)建函數(shù)總結(jié)

以下假設(shè)變量 str = "hello world"

方法 描述
str.capitalize() 將字符串的第一個(gè)字符轉(zhuǎn)換為大寫(xiě)
str.count("l") 計(jì)算 l 在字符串中的個(gè)數(shù)
str.center(50,"-") 50個(gè)字符远搪,不足50位補(bǔ)-,字符串居中
str.endswith("x") 是否以x 結(jié)尾, 返回 True / False
str.find("or") 查找到or所在的位置
str.isalnum() 如果字符串至少有一個(gè)字符并且所有字符都是字母或數(shù)字則返 回 True,否則返回 False
str.isalpha() 如果字符串至少有一個(gè)字符并且所有字符都是字母則返回 True, 否則返回 False
str.isdecimal() 檢查字符串是否只包含十進(jìn)制字符,如果是返回 true逢捺,否則返回 false
str.isdigit() 如果字符串只包含數(shù)字則返回 True 否則返回 False
str.isidentifier() 判讀是不是一個(gè)合法的標(biāo)識(shí)符
str.isnumeric() 如果字符串中只包含數(shù)字字符谁鳍,則返回 True,否則返回 False
str.istitle() 如果字符串是標(biāo)題化劫瞳,則返回 True倘潜,否則返回 False
'+'.join( ['1','2','3']) 以指定字符串作為分隔符,將 seq中所有的元素合并為一個(gè)新的字符串
str.ljust(50,'*') 返回長(zhǎng)度為50個(gè)字符串志于,不夠在左邊加"*"
str.rjust(50,'-') 返回長(zhǎng)度為50個(gè)字符串涮因,不夠在右邊加"-"
str.lower() 全部轉(zhuǎn)換成小寫(xiě)
str.upper() 全部大寫(xiě)
str.lstrip() 刪除字符串前面的空格
str.rstrip() 刪除字符串末尾的空格
str.replace('l','L',1) 將第一個(gè) l 改成 L
str.rfind('l') 從右往左查找 l 所在的位置
str.splitlines() 將字符串通過(guò)換行符分割成列表
str.swapcase() 大寫(xiě)轉(zhuǎn)小寫(xiě),小寫(xiě)轉(zhuǎn)大寫(xiě)
str.title() 轉(zhuǎn)化為標(biāo)題格式伺绽,單詞首字母大寫(xiě)
str.zfill(50) 填充到50個(gè)养泡,不足補(bǔ)0

補(bǔ)充:Python三引號(hào)

python三引號(hào)允許一個(gè)字符串跨多行,字符串中可以包含換行符奈应、制表符以及其他特殊字符

para_str = """這是一個(gè)多行字符串的實(shí)例
多行字符串可以使用制表符
TAB ( \t )澜掩。
也可以使用換行符 [ \n ]。
"""
print (para_str)

實(shí)例執(zhí)行結(jié)果為:

這是一個(gè)多行字符串的實(shí)例
多行字符串可以使用制表符
TAB (    )杖挣。
也可以使用換行符 [ 
 ]肩榕。
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市惩妇,隨后出現(xiàn)的幾起案子株汉,更是在濱河造成了極大的恐慌,老刑警劉巖歌殃,帶你破解...
    沈念sama閱讀 212,222評(píng)論 6 493
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件乔妈,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡氓皱,警方通過(guò)查閱死者的電腦和手機(jī)褒翰,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,455評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門(mén)贮懈,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人优训,你說(shuō)我怎么就攤上這事「髌福” “怎么了揣非?”我有些...
    開(kāi)封第一講書(shū)人閱讀 157,720評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)躲因。 經(jīng)常有香客問(wèn)我早敬,道長(zhǎng),這世上最難降的妖魔是什么大脉? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,568評(píng)論 1 284
  • 正文 為了忘掉前任搞监,我火速辦了婚禮,結(jié)果婚禮上镰矿,老公的妹妹穿的比我還像新娘琐驴。我一直安慰自己,他們只是感情好秤标,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,696評(píng)論 6 386
  • 文/花漫 我一把揭開(kāi)白布绝淡。 她就那樣靜靜地躺著,像睡著了一般苍姜。 火紅的嫁衣襯著肌膚如雪牢酵。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 49,879評(píng)論 1 290
  • 那天衙猪,我揣著相機(jī)與錄音馍乙,去河邊找鬼。 笑死垫释,一個(gè)胖子當(dāng)著我的面吹牛丝格,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播饶号,決...
    沈念sama閱讀 39,028評(píng)論 3 409
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼铁追,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了茫船?” 一聲冷哼從身側(cè)響起琅束,我...
    開(kāi)封第一講書(shū)人閱讀 37,773評(píng)論 0 268
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎算谈,沒(méi)想到半個(gè)月后涩禀,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,220評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡然眼,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,550評(píng)論 2 327
  • 正文 我和宋清朗相戀三年艾船,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,697評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡屿岂,死狀恐怖践宴,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情爷怀,我是刑警寧澤阻肩,帶...
    沈念sama閱讀 34,360評(píng)論 4 332
  • 正文 年R本政府宣布,位于F島的核電站运授,受9級(jí)特大地震影響烤惊,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜吁朦,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,002評(píng)論 3 315
  • 文/蒙蒙 一柒室、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧逗宜,春花似錦雄右、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,782評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至刻诊,卻和暖如春防楷,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背则涯。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,010評(píng)論 1 266
  • 我被黑心中介騙來(lái)泰國(guó)打工复局, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人粟判。 一個(gè)月前我還...
    沈念sama閱讀 46,433評(píng)論 2 360
  • 正文 我出身青樓亿昏,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親档礁。 傳聞我的和親對(duì)象是個(gè)殘疾皇子角钩,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,587評(píng)論 2 350

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

  • 本節(jié)要介紹的是Python里面常用的幾種數(shù)據(jù)結(jié)構(gòu)。通常情況下栅受,聲明一個(gè)變量只保存一個(gè)值是遠(yuǎn)遠(yuǎn)不夠的将硝,我們需要將一組...
    小黑y99閱讀 65,191評(píng)論 0 9
  • Spring Cloud為開(kāi)發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理恭朗,服務(wù)發(fā)現(xiàn),斷路器依疼,智...
    卡卡羅2017閱讀 134,633評(píng)論 18 139
  • 我不信任世界滿滿都是善意痰腮, 我不信任即時(shí)的快樂(lè), 我不信任車水馬龍律罢, 人來(lái)人往诽嘉。 我不信任人類刻意的笑容, 廣播里...
    方腦殼兒閱讀 194評(píng)論 0 0
  • 向日葵 軍事武器
    愛(ài)暖心扉一悠悠閱讀 220評(píng)論 0 0
  • 他是好萊塢最具個(gè)性的動(dòng)作巨星之一, 也長(zhǎng)期占據(jù)著全球演員富豪榜單之列趋翻, 這名不折不扣的吸金狂魔睛琳, 卻一直抵觸將私生...
    劇透社閱讀 1,636評(píng)論 1 1