python內建資料結構 字串

2021-08-17 23:18:48 字數 3377 閱讀 6369

字串

乙個個 字元(不是位元組)組成的有序的序列

單引號、雙引號、三引號引住的字串行

可以被迭代,可以被索引

字串是不可變物件

python3,字串就是unicode

字串的join連線

"string".join(iterable) -> str

講課迭代物件連線起來,使用string作為分隔符

可迭代物件本身元素都是字串

返回乙個新字串

字串+連線

+  將2個字串連線到一起

返回乙個新字串

字串分割

split(sep=none,maxsplit=-1)

從左到右

sep指定分割字串,預設的情況下空白字元作為分隔符

maxsplit指定分割的次數,-1表示遍歷整個字串,預設為-1

任意個空白符算乙個(不指定分割符的時候)

rsplit

從右到左

字串分割

splitlines([keepends])

按照行來切分字串

keepends 指的是是否保留行分隔符

行分隔符包括\n,\r\n,\r等

字串分割

partition(sep)

從左至右,遇到分隔符酒吧字串分割成兩部分,返回頭、分隔符、尾三部分的三元組;如果沒有找到分隔符,就返回頭、2個空元素的三元組

字串大小寫

upper()

全大寫lower()

全小寫大小寫,做判斷的時候用

swapcase()

互動大小寫

字串排版

title() ->str

標題每個單詞都大寫

capitalize() ->str

首個單詞大寫

center(width[,fillchar]) ->str

width列印寬度

fillchar填充的字元

zfill(width) ->str

width列印寬度,居右,左邊用0填充

ljusr(width[,fillchar]) ->str左對齊

rjust(width[,fillchar]) - >str 右對齊

字串修改

replace(old,new[,count]) - >str

字串中找到匹配替換為新字串,返回新字串

count表示替換幾次,不指定就是全部替換

例如'www.magedu.com'.replace('w','p',2)

strip([chars]) - >str

從字串兩端去除指定的字符集chars中所有字元

如果chars沒有指定,去除兩端的空白字元

lstrip

rstrip

字串查詢

find(sub[,start[,end]]) ->int

再指定的區間[start,end),從左至右,查詢子串sub。找到返回索引,沒找到返回-1

rfind(sub[,start[,end]]) ->int

從右到左

例如 s ='dsffsdf'

s.find('very',6,13)6到13

index

index與find的區別在於沒找到索引丟擲valuerror,find丟擲-1

rindex

字串查詢

時間複雜度

index和count方法都是o(n)

隨著列表資料規模的增大,而效率下降

len(string)

返回字串的長度,即字元的個數

count(sub[,start[,end]]) - >int

在指定的區間 統計子串sub出現的次數

字串判斷

endswith(suffix[,start[,end]]) - >bool

在指定區間,字串是否是suffix結尾

startswith(prefix[,start[,end]]) -> bool

在指定區間[start,end],字串是否是prefix開頭

此函式可以超界

例如s = "i am very very very sorry"

s.startswith('very',5,2000)

字串判斷is系列

isalnum()

isalpha()

isdecimal()

isdigit()

isidentifier()

islower()

isupper()

isspace()

字串格式化

拼接字串輸出

join拼接只能使用分隔符,要求被拼接的是可迭代物件

+ 非字串需要轉化為字串才能拼接

printf style風格的print輸出

格式要求

佔位符:使用%和格式字元組成,例如%s、%d等

s呼叫str(),r呼叫repr()

%03d表示列印3個位置,不夠前面補零

format % values ,格式字串和被格式的值之間使用%分隔

values只能是乙個物件,或乙個和格式字串佔位符數目相等的元組,或乙個字典

字串格式化

format函式格式字串語法

格式:"{} ".format(*args,**kwargs) -> str

args是位置引數,是乙個元組

kwargs是關鍵字引數,是乙個字典

花括號表示佔位符

{}表示按照順序匹配位置引數,表示取位置引數為n的值

表示在關鍵字引數中搜尋名稱一致的

}表示列印花括號

位置引數

例如"{}:{}".format('192.0.0.0',8888)

關鍵字引數或命名引數

"{}:{}".format('192.0.0.0',8888,server='web server info:')關鍵字引數都放在後面

訪問元素

".".format(('magedu','com'))

物件屬性訪問

from collections import namedtuple point = namedtuple('point','x y') p = point(4,5) ",}}".format(p)

對齊'*='.format(3,2,2*3) '*='.format(3,2,2*3) '*='.format(3,2,2*3) ''.format('centered') ''.format('centered')

進製"int: ; hex: ; oct: ; bin: ".format(42) "int: ; hex: ; oct: ; bin: ".format(42) octets = [192, 168, 0, 1] ''.format(*octets)

python 內建資料結構字串

2.轉義字元 3.刪除字元和字串 二.字串的基本特性 字串的內建方法 字串或串由數字 字母 下劃線組成的一串字元。可以通過單引號 雙引號 三引號的方式建立它們。第一種方式 str1 hello world 第二種方式 str2 hello world 第三種方式 str3 hello world 第...

Python 資料結構 字串

簡單介紹一些常用的字串處理函式 1 len 2 strip 3 find 4 index 5 count 4 lower 5 upper 字串是python的一種不可變資料型別,一旦建立後,他所對應的記憶體空間的位址就確定下來,具體的記憶體位址可以通過id 函式進行檢視 對於字串的訪問,我們常常會結...

資料結構 字串

1 字串 include string.h include stdio.h include stdlib.h include math.h include time.h define ok 1 define error 0 define true 1 define false 0 define ma...