自學(xué)整理記錄滨攻,大神見笑
字符串
- 引號(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的字符
- 輸出如下:
2.統(tǒng)計(jì)
2.1 獲取字符串長度→ len
- len(字符串)
str_one = "zhangsan"
print(str_one)
a = len(str_one)
print(a)
- 統(tǒng)計(jì)str_one的長度
- 輸出如下:
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ù)
- 輸出如下:
- 注:count方法可以指定開始查詢的位置索引女嘲,和結(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ù)
- 輸出如下:
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)的索引位置
- 輸出如下:
- 注:index方法同樣可以加兩個(gè)參數(shù)诞帐,開始查詢位置的參數(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)的索引位置
- 輸出如下:
- 注:如果字符串2在字符串1中不存在停蕉,則會(huì)報(bào)錯(cuò)ValueError愕鼓,如下
str_one = "zhangsan"
str_two = "b"
print(str_one)
a = str_one.index(str_two)
print(a)
- 輸出如下:
字符串常用方法總覽
- 判斷類型
方法 | 說明 |
---|---|
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 |
- 查找和替換
方法 | 說明 |
---|---|
stirng.startswith(str) | 檢查stirng是否以str開頭犹褒,是則返回True |
stirng.endswith(str) | 檢查stirng是否以str結(jié)尾,是則返回True |
stirng.find(str,start=0,end=len(stirng)) | 檢測str是否包含在string中大溜,如果start和end指定范圍,則檢查是否包含在指定范圍內(nèi)估脆,是則返回開始的索引值钦奋,否則返回-1 |
stirng.rfind(str,start=0,end=len(stirng)) | 類似find()方法,區(qū)別是從右側(cè)開始查找 |
stirng.index(str,start=0,end=len(stirng)) | 類似find()方法疙赠,只不過str不在stirng會(huì)報(bào)錯(cuò) |
stirng.rindex(str,start=0,end=len(stirng)) | 類似rfind()方法付材,只不過str不在stirng會(huì)報(bào)錯(cuò) |
stirng.replace(old_str,new_str,num=string.count(old)) | 把stirng中的old_str替換成new_str,如果num指定圃阳,則替換不超過num次 |
- 大小寫轉(zhuǎn)換
方法 | 說明 |
---|---|
stirng.capitalize() | 把stirng的第一個(gè)字母大寫 |
stirng.title() | 把stirng的每個(gè)單詞首字母大寫 |
stirng.lower() | 把stirng中的所有字母改為小寫 |
stirng.upper() | 把stirng中的所有字母改為大寫 |
stirng.swapcase() | 翻轉(zhuǎn)stirng中字母的大小寫 |
- 文本對(duì)齊
方法 | 說明 |
---|---|
string.ljust(width) | 返回一個(gè)原string左對(duì)齊厌衔,并使用空格補(bǔ)齊至width長度的新string |
string.rjust(width) | 返回一個(gè)原string右對(duì)齊,并使用空格補(bǔ)齊至width長度的新string |
string.center(width) | 返回一個(gè)原string居中捍岳,并使用空格補(bǔ)齊至width長度的新string |
注意:上面三個(gè)方法第二個(gè)參數(shù)可以指定填充的內(nèi)容
去除空白字符
方法 | 說明 |
---|---|
string.lstrip() | 截掉string左邊開始的空白字符 |
string.rstrip() | 截掉string右邊末尾的空白字符 |
string.strip() | 截掉string左右兩邊的空白字符 |
- 拆分和連接
方法 | 說明 |
---|---|
string.partition(str) | 把string分成一個(gè)3元素的元組(str前面,str,str后面) |
string.rpartition(str) | 類似于partition()函數(shù)富寿,區(qū)別是從右邊開始查找 |
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中的截取
- 切片使用索引值來限定范圍变勇,從一個(gè)大的字符串中切出小的字符串
- 切片格式如下:
字符串[開始索引:結(jié)束索引:步長]
- 注意:從頭開始,或到末尾結(jié)束的索引可以省略
- 注:步長不指定贴唇,默認(rèn)為1
- 注:倒序是從-1開始搀绣,-2,-3類推
公共方法
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)算符
- 事例見上方表格中
完整的for循環(huán)語句
- 語法格式如下:
for 變量 in 集合:
?循環(huán)體代碼
else:
?沒有通過break退出循環(huán)馒铃,循環(huán)結(jié)束后,會(huì)執(zhí)行的代碼