字符串和公共方法

自學(xué)整理記錄,大神見(jiàn)笑

字符串

  • 引號(hào)中的內(nèi)容就是字符串,是一種文本類型
  • Python中可以單引號(hào)可以是單引號(hào),但一般用雙引號(hào)
  • 字符串總有"號(hào),使用轉(zhuǎn)義符即可
  • 字符串可以循環(huán)遍歷出每一個(gè)字符

字符串的常用操作

1.查

  • 字符串[索引]

str_one = "zhangsan"
print(str_one)
a = str_one[4]
print(a)

  • 查詢字符串str_one索引為4的字符
  • 輸出如下:
str1.png

2.統(tǒng)計(jì)

2.1 獲取字符串長(zhǎng)度→ len

  • len(字符串)

str_one = "zhangsan"
print(str_one)
a = len(str_one)
print(a)

  • 統(tǒng)計(jì)str_one的長(zhǎng)度
  • 輸出如下:
str2.png

2.2 字符串2在字符串1中出現(xiàn)的次數(shù)→count

  • 字符串1.count(字符串2)

str_one = "zhangsan"
str_two = "a"
print(str_one)
a = str_one.count(str_two)
print(a)

  • 統(tǒng)計(jì)字符串2 str_two在字符串1 str_one中出現(xiàn)的次數(shù)
  • 輸出如下:
str3.png
  • 注:count方法可以指定開(kāi)始查詢的位置索引,和結(jié)束查詢位置的索引兩個(gè)參數(shù),如下

str_one = "zhangsan"
str_two = "a"
print(str_one)
a = str_one.count(str_two, 1, 4)
print(a)

  • 統(tǒng)計(jì)字符串2 str_two在字符串1 str_one中從索引1到索引4之間出現(xiàn)的次數(shù)
  • 輸出如下:
image.png

2.3 字符串2在字符串1中第一次出現(xiàn)的索引→index

  • 字符串1.index(字符串2)

str_one = "zhangsan"
str_two = "a"
print(str_one)
a = str_one.index(str_two)
print(a)

  • 統(tǒng)計(jì)字符串2 str_two在字符串1 str_one中第一次出現(xiàn)的索引位置
  • 輸出如下:
image.png
  • 注:index方法同樣可以加兩個(gè)參數(shù),開(kāi)始查詢位置的參數(shù)和結(jié)束位置的參數(shù),同count方法,如下

str_one = "zhangsan"

str_two = "a"
print(str_one)
a = str_one.index(str_two, 3, 7)
print(a)

  • 統(tǒng)計(jì)字符串2 str_two在字符串1 str_one中從索引3到索引7之間第一次出現(xiàn)的索引位置
  • 輸出如下:
image.png
  • 注:如果字符串2在字符串1中不存在,則會(huì)報(bào)錯(cuò)ValueError,如下

str_one = "zhangsan"
str_two = "b"
print(str_one)
a = str_one.index(str_two)
print(a)

  • 輸出如下:
image.png

字符串常用方法總覽

  • 判斷類型
方法 說(shuō)明
string.isspace() 如果string中只包含空白字符(空格或者制表符或空格),返回True
string.isalnum() 如果string至少有一個(gè)字符且所有字符都是字母或數(shù)字,返回True
string.isalpha() 如果string至少有一個(gè)字符且所有字符都是字母,返回True
string.isdecimal() 如果string只包含數(shù)字,返回True,全角數(shù)字
string.isdigit() 如果stirng只包含數(shù)字,返回True,全角數(shù)字、(1)、\u00b2
string.isnumeric() 如果string只包含數(shù)字,返回True,全角數(shù)字,漢字?jǐn)?shù)字
string.istitle() 如果string是標(biāo)題化的(每個(gè)單詞的首字母大寫),返回True
string.islower() 如果string包含至少一個(gè)字母且所有字母小寫,返回True
string.isupper() 如果string包含至少一個(gè)字母且所有字母大寫,返回True
  • 查找和替換
方法 說(shuō)明
stirng.startswith(str) 檢查stirng是否以str開(kāi)頭,是則返回True
stirng.endswith(str) 檢查stirng是否以str結(jié)尾,是則返回True
stirng.find(str,start=0,end=len(stirng)) 檢測(cè)str是否包含在string中,如果start和end指定范圍,則檢查是否包含在指定范圍內(nèi),是則返回開(kāi)始的索引值,否則返回-1
stirng.rfind(str,start=0,end=len(stirng)) 類似find()方法,區(qū)別是從右側(cè)開(kāi)始查找
stirng.index(str,start=0,end=len(stirng)) 類似find()方法,只不過(guò)str不在stirng會(huì)報(bào)錯(cuò)
stirng.rindex(str,start=0,end=len(stirng)) 類似rfind()方法,只不過(guò)str不在stirng會(huì)報(bào)錯(cuò)
stirng.replace(old_str,new_str,num=string.count(old)) 把stirng中的old_str替換成new_str,如果num指定,則替換不超過(guò)num次
  • 大小寫轉(zhuǎn)換
方法 說(shuō)明
stirng.capitalize() 把stirng的第一個(gè)字母大寫
stirng.title() 把stirng的每個(gè)單詞首字母大寫
stirng.lower() 把stirng中的所有字母改為小寫
stirng.upper() 把stirng中的所有字母改為大寫
stirng.swapcase() 翻轉(zhuǎn)stirng中字母的大小寫
  • 文本對(duì)齊
方法 說(shuō)明
string.ljust(width) 返回一個(gè)原string左對(duì)齊,并使用空格補(bǔ)齊至width長(zhǎng)度的新string
string.rjust(width) 返回一個(gè)原string右對(duì)齊,并使用空格補(bǔ)齊至width長(zhǎng)度的新string
string.center(width) 返回一個(gè)原string居中,并使用空格補(bǔ)齊至width長(zhǎng)度的新string
  • 注意:上面三個(gè)方法第二個(gè)參數(shù)可以指定填充的內(nèi)容

  • 去除空白字符

方法 說(shuō)明
string.lstrip() 截掉string左邊開(kāi)始的空白字符
string.rstrip() 截掉string右邊末尾的空白字符
string.strip() 截掉string左右兩邊的空白字符
  • 拆分和連接
方法 說(shuō)明
string.partition(str) 把string分成一個(gè)3元素的元組(str前面,str,str后面)
string.rpartition(str) 類似于partition()函數(shù),區(qū)別是從右邊開(kāi)始查找
string.split(str="",num) 以str為分隔符切string,如果num有指定值,則僅分隔num+1個(gè)子字符串,str默認(rèn)包含'\r','\t','\n'和空格
string.splitlines() 按照行('\r','\n','\r\n')分隔,返回一個(gè)包含各行作為元素的列表
string.join(seq) 以string作為分隔符,將seq中所有的元素(stirng表示)合并為一個(gè)新stirng

字符串的切片

  • 切片即Java中的截取
  • 切片使用索引值來(lái)限定范圍,從一個(gè)大的字符串中切出小的字符串
  • 切片格式如下:

字符串[開(kāi)始索引:結(jié)束索引:步長(zhǎng)]

  • 注意:從頭開(kāi)始,或到末尾結(jié)束的索引可以省略
  • 注:步長(zhǎng)不指定,默認(rèn)為1
  • 注:倒序是從-1開(kāi)始,-2,-3類推
切片索引.jpg

公共方法

Python內(nèi)置函數(shù)

函數(shù) 描述 備注
len(item) 計(jì)算容器中元素個(gè)數(shù)
del(item) 刪除變量 del有兩種方式
max(item) 返回容器中元素最大值 如果是字典,只針對(duì)key比較
min(item) 返回容器中元素最小值 如果是字典,只針對(duì)key比較
cmp(item1,itme2) 比較兩個(gè)值,-1小于/0等于/1大于 Python 3.x取消了cmp函數(shù)
  • 注意:字符串比較規(guī)則"0"<"A"<"a"

切片

  • 列表,元組,字符串都可切片

運(yùn)算符

運(yùn)算符 Python表達(dá)式 結(jié)果 描述 支持的數(shù)據(jù)類型
+ [1,2]+[3,4] [1,2,3,4] 合并 字符串、列表、元組
* ["Hi!"]*4 ["Hi!","Hi!","Hi!","Hi!"] 重復(fù) 字符串、列表、元組
in 3 in (1,2,3) True 元素是否存在 字符串、列表、元組、字典
not in 4 not in (1,2,3) True 元素是否不存在 字符串、列表、元組、字典
> >= == <= < (1,2,3)<(2,2,3) True 元素比較 字符串、列表、元組
  • 注:字典和int整型不能使用*號(hào)重復(fù)拼接
  • 注意:append方式會(huì)把列表當(dāng)作一個(gè)獨(dú)立元素添加到列表中
  • in和not in在和字典操作時(shí),判斷的是key
  • in和not in被稱為成員運(yùn)算符

成員運(yùn)算符

  • in和not in,判斷該元素是否是列表/元組/字典/字符串中的成員,所以稱為成員運(yùn)算符
  • 事例見(jiàn)上方表格中

完整的for循環(huán)語(yǔ)句

  • 語(yǔ)法格式如下:

for 變量 in 集合:
?循環(huán)體代碼
else:
?沒(méi)有通過(guò)break退出循環(huán),循環(huán)結(jié)束后,會(huì)執(zhí)行的代碼

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 第2章 基本語(yǔ)法 2.1 概述 基本句法和變量 語(yǔ)句 JavaScript程序的執(zhí)行單位為行(line),也就是一...
    悟名先生閱讀 4,562評(píng)論 0 13
  • 我明白了,人真是多姿多彩,外表永遠(yuǎn)讀不懂每個(gè)人的內(nèi)心,當(dāng)你第一次看到別人的一切,那只是外表,不能輕易的斷定一個(gè)人,...
    A漂楊越海閱讀 294評(píng)論 0 4
  • “我和男友在大學(xué)的時(shí)候就已經(jīng)在一起了,到現(xiàn)在都已經(jīng)五年了,他最近老是說(shuō)我幼稚,不懂事,他是不是不愛(ài)我了?” “我無(wú)...
    三面辰光閱讀 599評(píng)論 0 1
  • 河口瑤族自治縣 河口瑤族自治位于紅河哈尼族彝族自治州東南部,隔紅河與越南老街市、谷柳市相望,是云南省惟一一個(gè)以瑤族...
    y英子z閱讀 263評(píng)論 0 0

友情鏈接更多精彩內(nèi)容