日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

怎么掌握python字符串

發(fā)布時(shí)間:2023/12/15 综合教程 63 生活家
生活随笔 收集整理的這篇文章主要介紹了 怎么掌握python字符串 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

本篇內(nèi)容主要講解“怎么掌握python字符串”,感興趣的朋友不妨來看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“怎么掌握python字符串”吧!

四大前綴

除了普通的字符串,python在字符串前面可以有4個(gè)前綴,即frub。其中,f字符串可將{}中的變量轉(zhuǎn)為字符串;r表示取消轉(zhuǎn)義;u表示使用Unicode字符;b表示采用byte類型。

前二者最常用,示例如下

>>>f"1+1={1+1}"#f字符串
'1+1=2'
>>>r"C:\abc\def"#r字符串取消轉(zhuǎn)義
'C:\\abc\\def'

大小寫轉(zhuǎn)化

大小寫轉(zhuǎn)化 說明 示例 結(jié)果
capitalize() 首字母轉(zhuǎn)大寫 'i love u'.capitalize() ‘I love u'
upper() 所有字母轉(zhuǎn)大寫 'I love u'.upper() ‘I LOVE U'
lower() 所有字母轉(zhuǎn)小寫 'I LOVE U'.lower() ‘i love u'
title() 單詞首字母大寫 'i love u'.title() ‘I Love U'
swapcase() 大小寫翻轉(zhuǎn) 'I Love U'.swapcase() ‘i lOVE u'
casefold() 超級(jí)大寫轉(zhuǎn)小寫 'Γ'.casefold() ‘γ'

空格調(diào)整函數(shù)

其中輸入w表示將字符長度調(diào)整為w,如未作說明,則其余位置補(bǔ)充為空格。

空格調(diào)整 說明 示例 結(jié)果
center(w) 調(diào)整后原字符串居中 'Love'.center(6) ' Love '
ljust(w) 調(diào)整后原字符串居左 'Love'.ljust(6) 'Love '
rjust(w) 調(diào)整后原字符串居右 'Love'.rjust(6) ' Love'
zfill(w) 在左側(cè)補(bǔ)0 '123'.zfill(6) ‘000123'
expandtabs(w) tab轉(zhuǎn)為w個(gè)空格 '\ta'.expandtabs(4) ' a'

刪除部分字符

s為字符串,如果為空則默認(rèn)為空格。

lstrip(s) 自左刪除s中的字符 'ILoveU'.lstrip('ILU') ‘oveU'
rstrip(s) 自右刪除s中的字符 '\tLove\t'.rstrip() ‘\tLove'
strip(s) 執(zhí)行l(wèi)strip(s)和rstrip(s) '\tLove\t'.strip() ‘Love'
removeprefix(s) 自左刪除s 'ILoveU'.removeprefix('ILU') ‘ILoveU'
removesuffix(s) 自右刪除s 'ILoveU'.removesuffix('eU') ‘ILov'

字符串判定

返回True的條件 示例 返回值
isalnum() 只包含字母或數(shù)字 'abc1'.isalnum() True
isalpha() 只含字母 'abc1'.isalpha() False
isdecimal() 只包含十進(jìn)制數(shù)字 '123A'.isdecimal() False
isdigit() 只含數(shù)字 '123A'.isdecimal() False
islower() 包含字母,且均為小寫 'abc1'.islower() True
isupper() 包含字母,且均為大寫 '123'.isupper() False
isnumeric() 只包含數(shù)字字符 '四五'.isnumeric() True
isspace() 只含空格 'asd'.isspace() False
istitle() 首字母均大寫 'I Love U'.istitle() True
isascii() 均為ASCII碼 '四'.isascii() False
isidentifier() 可用作python標(biāo)識(shí)符 '1asd'.isidentifier() False
isprintable() 均為可打印字符 chr(1).isprintable() False

字符串查找

下面的函數(shù)均有三個(gè)輸入?yún)?shù),str表示待匹配字符串,begend分別表示開頭和結(jié)尾,默認(rèn)為0和被匹配字符串的長度。以s.count(str, beg, end)為例,表示s[beg:end]str出現(xiàn)的次數(shù)。

s.count(str, beg, end) str出現(xiàn)的次數(shù)
s.find(str, beg, end) str首次出現(xiàn)的位置,如未找到則返回-1
s.rfind(str, beg, end) str最后出現(xiàn)的位置,如未找到則返回-1
s.index(str, beg, end) find相同,但未找到會(huì)報(bào)錯(cuò)
s.rindex(str, beg, end) rfind相同,但未找到會(huì)報(bào)錯(cuò)
s.startswith(str, beg, end) 若以str開頭,則返回True
s.endswith(str, beg, end) 若以str結(jié)尾,則返回True

分割、合并和替換

s.split(str, num) s按照str進(jìn)行分割,若指定num,則分割為num+1
s.rsplit(str, num) 和split相同,但從右向左開始匹配
s.splitlines([keepends]) 按行分割,若指定keepends為False,則不保留換行符
s.join(seq) s為分隔符,將seq中的字符串組合在一起
s.partition(str) s分成三份,str左邊,strstr右邊
s.rpartition(str) partition相同,但從右邊開始
s.replace(s1, s2, num) s中的s1換成s2,若指定num,則替換不超過num次

除了replace,還可以通過translate來進(jìn)行替換,區(qū)別在于translate輸入的是maketrans建立的替換表。

>>>trans=''.maketrans('I',"我")
>>>"ILoveU".translate(trans)
'我LoveU'

format格式化

format可將標(biāo)識(shí)符{}替換為元組中的值,如果{}中未指定序號(hào),則順序替代。

'{}Love{}'.format('I','U')
'ILoveU'

如果{}中指定了序號(hào),則按照序號(hào)的順序替代

>>>'{0}Love{1},{1}Love{0}'.format('I','U')
'ILoveU,ULoveI'#最近被蜜雪冰城洗腦了。。。

當(dāng)然,和C語言一樣,這種格式化用于數(shù)字轉(zhuǎn)化的情況多一些,python中通過:來聲明數(shù)字轉(zhuǎn)化為字符串之后的格式

其中,

  • ^, <, > 分別表示居中、左對(duì)齊、右對(duì)齊

  • +表示在正數(shù)前顯示+,負(fù)數(shù)前顯示 -

  • bdox分別是二進(jìn)制、十進(jìn)制、八進(jìn)制、十六進(jìn)制

具體示例如下

>>>frommathimportpi
輸入 輸出 描述
'{:.2f}'.format(pi) ‘3.14' 保留兩位小數(shù),四舍五入
'{:.2%}'.format(pi) ‘314.16%' 保留兩位小數(shù)的百分?jǐn)?shù)
'{:+.2f}'.format(1) ‘+1.00' 保留兩位小數(shù),帶符號(hào)
'{:0>5d}'.format(1) ‘00001' 左側(cè)補(bǔ)0,寬度為5
'{:>5d}'.format(1) ‘01' 左側(cè)補(bǔ)空格,寬度為5
'{:x<5d}'.format(1) ‘1xxxx' 右側(cè)補(bǔ)x,寬度為5
'{:-^5d}'.format(1) ‘–1--' 兩側(cè)補(bǔ)-,寬度為5
'{:,}'.format(1e5) ‘100,000.0' 逗號(hào)分隔
'{:.2e}'.format(1e5) ‘1.00e+05' 科學(xué)計(jì)數(shù)法
'{:b}'.format(8) ‘1000' 二進(jìn)制

format_map

format的輸入為一個(gè)字符串元組,將元組中的字符串根據(jù)索引替代字符串中的{},而format_map則直接用字典來進(jìn)行格式化。

例如用元組可以做到

>>>'{}Love{}'.format("阿珍","阿強(qiáng)")
'阿珍Love阿強(qiáng)'

而用字典,則可以這樣寫

>>>'{A}Love{B}'.format_map({"A":"阿珍","B":"阿強(qiáng)"})
'阿珍Love阿強(qiáng)'

從而使得代碼更加清晰。

總結(jié)

以上是生活随笔為你收集整理的怎么掌握python字符串的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。