01.Python基礎-4.字符串

1 字符串初識

  1. 字符串編碼
image.png
image.png
  1. 字符串定義:多個字符(雙引號或單引號中的數(shù)據(jù))組成

  2. 字符串下標 類似列表list

  3. 格式化 就是占位符 最常用%s %d %f等等

  4. 轉(zhuǎn)義字符

轉(zhuǎn)義字符 描述
\ (在行尾時) 續(xù)行符
\ 反斜杠符號
' 單引號
" 雙引號
\n 換行
\t 橫向制表符
\r 回車(一般不單獨使用)
  1. 運算符
a = 'python'
b = 'hello'
a + b # pythonhello
a*2   # pythonpython

2 字符串的常見方法操作

2.1 查找

  1. string.find(str[, beg=0[, end=len(string)]]) 常用
  • 檢測 str 是否在 string 中
  • 如果 begend 指定范圍,則檢查是否在指定范圍內(nèi)
  • 如果是返回開始的索引值惕鼓,否則返回-1
  1. string.rfind(str[, beg=0[, end=len(string)]])

類似于 find()函數(shù)箱歧,不過是從右邊開始查找

  1. string.index(str[, beg=0[, end=len(string)]])

類似于 find()函數(shù),但是找不到報異常

  1. string.rindex(str[, beg=0[, end=len(string)]])

類似于 rfind()函數(shù)洒沦,但是找不到報異常

2.2 統(tǒng)計

string.count(str[, beg=0[, end=len(string)]])

  • 檢測 str 在 string 中出現(xiàn)的次數(shù)
  • 如果 begend 指定范圍申眼,則檢查是否在指定范圍內(nèi)

2.3 分隔

  1. string.split(‘str’, num=string.count(str))
  • 以 str 為分隔符切片 string
  • 如果 num有指定值括尸,則僅分隔 num 個子字符串
s = 'a,b,c'
ls = s.split(',')
print(ls) # ['a', 'b', 'c']

s = 'a,b,c'
ls = s.split(',', 1)
print(ls) # ['a', 'b,c']
  1. string.splitlines([keepends])
  • 按照行('\r', '\r\n','\n')分隔濒翻,返回一個包含各行作為元素的列表
  • 如果參數(shù) keependsFalse有送,不包含換行符僧家,如果為 True啸臀,則保留換行符届宠。
s = 'aaa\nbbb'
ls = s.splitlines()
print(ls) # ['aaa', 'bbb']

s = 'aaa\nbbb'
ls = s.splitlines(True)
print(ls) # ['aaa\n', 'bbb']
  1. string.partition(str)
  • 有點像 find()split()的結(jié)合體,從 str 出現(xiàn)的第一個位置起,把 字 符 串 string 分 成 一 個 3 元 素 的 元 組 (string_pre_str,str,string_post_str)
  • 如果 string 中不包含str 則 string_pre_str == string
  1. string.rpartition(str)

類似于 partition()函數(shù),不過是從右邊開始

2.4 判斷

  1. string.startswith(obj[, beg=0[,end=len(string)]])
  • 檢查字符串是否是以 obj 開頭,是則返回 True乘粒,否則返回 False
  • 如果begend 指定值豌注,則在指定范圍內(nèi)檢查
  1. string.endswith(obj[, beg=0[,end=len(string)]])
  • 檢查字符串是否是以 obj 結(jié)尾,是則返回 True灯萍,否則返回 False
  • 如果begend 指定值轧铁,則在指定范圍內(nèi)檢查
  1. string.isalnum()
  • 所有字符都是字母或數(shù)字則返回 True,否則返回 False
  1. string.isalpha()
  • 所有字符都是字母則返回 True,否則返回 False
  1. string.isdigit()
  • 所有字符都是數(shù)字則返回 True,否則返回 False
  1. string.isupper()
  • 所有字符都是大寫則返回 True,否則返回 False
  1. string.islower()
  • 所有字符都是小寫則返回 True,否則返回 False
  1. string.isspace()
  • 只包含空格則返回 True,否則返回 False

2.5 大小寫

  1. string.capitalize()
  • 把字符串的第一個字符大寫
  1. string.upper()
  • 轉(zhuǎn)換 string 中的小寫字母為大寫
  1. string.lower()
  • 轉(zhuǎn)換 string 中的大寫字母為小寫

2.6 對齊

  1. string.ljust(width)
  • 返回一個原字符串左對齊,并使用空格填充至長度 width 的新字符串
  1. string.rjust(width)
  • 返回一個原字符串右對齊,并使用空格填充至長度 width 的新字符串
  1. string.center(width)
  • 返回一個原字符串居中,并使用空格填充至長度 width 的新字符串

2.7 裁剪

  1. string.strip([obj])
  • 刪除 string 字符串前后的的obj,如果不傳參數(shù)旦棉,刪除前后空格
  1. string.lstrip([obj])
  • 刪除 string 字符串左面的obj齿风,如果不傳參數(shù),刪除左面空格
  1. string.rstrip([obj])
  • 刪除 string 字符串右面的obj绑洛,如果不傳參數(shù),刪除右面空格

2.8 合并

string.join(seq)

  • 以 string 作為分隔符脸候,將 seq 中所有的元素(的字符串表示)合并為一個新的字符串
ls = ['a', 'b', 'c']
s1 = '-'
s2 = s1.join(ls) # 'a-b-c'

s = 'a-b-c'
s.split('-') # ['a', 'b', 'c']

2.8 大小寫

  1. string.encode(encoding='UTF-8', errors='strict')
  • 以 encoding 指定的編碼格式編碼 string,
  • 如果出錯默認報一個ValueError 的異常嫁盲,除非errors指定的是'ignore'或者'replace'
  1. bytes.decode(encoding='UTF-8', errors='strict')
  • 以 encoding 指定的編碼格式解碼 string,
  • 如果出錯默認報一個 ValueError 的異常,除非errors指定的是'ignore' 或者'replace'
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市幸斥,隨后出現(xiàn)的幾起案子懈贺,更是在濱河造成了極大的恐慌画侣,老刑警劉巖皮迟,帶你破解...
    沈念sama閱讀 211,561評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異燥透,居然都是意外死亡徒役,警方通過查閱死者的電腦和手機杉女,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,218評論 3 385
  • 文/潘曉璐 我一進店門坎拐,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人积担,你說我怎么就攤上這事〉乃福” “怎么了买雾?”我有些...
    開封第一講書人閱讀 157,162評論 0 348
  • 文/不壞的土叔 我叫張陵晃危,是天一觀的道長震叮。 經(jīng)常有香客問我尉间,道長眠副,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,470評論 1 283
  • 正文 為了忘掉前任拧烦,我火速辦了婚禮齐佳,結(jié)果婚禮上疫衩,老公的妹妹穿的比我還像新娘。我一直安慰自己假褪,他們只是感情好缀遍,可當我...
    茶點故事閱讀 65,550評論 6 385
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著殴瘦,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,806評論 1 290
  • 那天枢泰,我揣著相機與錄音毛甲,去河邊找鬼补箍。 笑死,一個胖子當著我的面吹牛遥诉,可吹牛的內(nèi)容都是我干的苞笨。 我是一名探鬼主播,決...
    沈念sama閱讀 38,951評論 3 407
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起盗冷,我...
    開封第一講書人閱讀 37,712評論 0 266
  • 序言:老撾萬榮一對情侶失蹤蟆湖,失蹤者是張志新(化名)和其女友劉穎伦仍,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體确买,經(jīng)...
    沈念sama閱讀 44,166評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,510評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,643評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡睦焕,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 34,306評論 4 330
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜祭玉,卻給世界環(huán)境...
    茶點故事閱讀 39,930評論 3 313
  • 文/蒙蒙 一烫堤、第九天 我趴在偏房一處隱蔽的房頂上張望富蓄。 院中可真熱鬧,春花似錦赁项、人聲如沸摩窃。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,745評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至雄嚣,卻和暖如春缓升,著一層夾襖步出監(jiān)牢的瞬間橙弱,已是汗流浹背蛀缝。 一陣腳步聲響...
    開封第一講書人閱讀 31,983評論 1 266
  • 我被黑心中介騙來泰國打工革答, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 46,351評論 2 360
  • 正文 我出身青樓捎废,卻偏偏與公主長得像笑窜,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子登疗,可洞房花燭夜當晚...
    茶點故事閱讀 43,509評論 2 348

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