字串的操作

2021-08-20 11:39:20 字數 1897 閱讀 2821

1, 單引、雙引號都可以定義字串

三引號允許乙個字串跨多行

如print("""hello

world\v

end\t"""

2. 可以使用中括號和下標來獲取單個字元,或擷取字串

mystr[1]獲取單個字元

切片字串:

mystr[1:5]擷取1到4下標的字串

mystr[:]列印所有

mystr[3:]列印從3 開始到最後乙個字元

mystr[-1:0]?

mystr[-1:0:-1]?

mystr[-1::-1]?

mystr[::-1]?

其中最後乙個引數代表步長

字串裡面的用法,

in 判斷是否在這些字串中

not in 判斷是否不在這些字串中

r/r: 原樣輸出字串。

4,字串格式化

%s 格式化字串

%d 格式化整數

%f 格式化浮點數

.format()格式化

3.1415926

3.14

保留小數點後兩位

3.1415926

+3.14

帶符號保留小數點後兩位

-1-1.00

帶符號保留小數點後兩位

2.71828

3不帶小數505

數字補零 (填充左邊, 寬度為2)

55***

數字補x (填充右邊, 寬度為4)

1010xx

數字補x (填充右邊, 寬度為4)

1000000

1,000,000

以逗號分隔的數字格式

0.25

25.00%

百分比格式

1000000000

1.00e+09

指數記法

1313

右對齊 (預設, 寬度為10)

1313

左對齊 (寬度為10)

1313

中間對齊 (寬度為10)

11

''

.format(11

)''.format(11

)''.format(11

)''.format(11

)''.format(11

)''.format(11

)

1011

1113

b0xb

0xb

進製len()

count()  mystr.count("abc") 返回mystr字串裡面有多少個abc

capitalize() 將第乙個字串的字母轉為大寫

title() 將所有字母轉為大寫

find() 找字串,返回找到的字串的下標,未找到返回-1

replace(oldstr, newstr) 替換不想要的字串

split() 擷取字串,並返回列表如a ="aefda[www.dd.ef]fef"

result=a.split("[")   返回 result=["aefda","www.dd.fg]fef"]

startswith() 以什麼什麼開始

endswith()以什麼結束

lower()  小寫

upper() 大寫

"hellow world".ljust(100,"=") 字元輸出以左對齊 空餘部份以=填充

rjust()  字串輸出以右對齊

center 居中對齊

splitlines 按照換行符拆分

isalpha()判斷字串是不是字母

isdigit()判斷字串是不是數字

isalnum()判斷客串是不是數字和字母

join(): 將列表組成字串,"".join(list)

字串操作 靠字串分割字串

字串分解函式。注意strtok比較複雜。要妥善運用!也可以不用strtok函式,但要實現字串靠字串分割比較困難!注意str指向的空間必須是可讀可寫的 如陣列或動態分配的空間 不能為字串常量的指標,因為strtok改變了其中的內容。include include 功能 將str中的字串按照elemon...

字串的操作

strcpy,sprintf,memcpy的區別 對於字串拷貝來說,其實現的效率和使用的方便程度不同 strcpy 無疑是最合適的選擇 效率高且呼叫方便。snprintf 要額外指定格式符並且進行格式轉化,麻煩且效率不高。memcpy 雖然高效,但是需要額外提供拷貝的記憶體長度這一引數,易錯且使用不...

字串的操作

pragma once define string h include include using namespace std define maxsize 255 typedef struct sstring void initstring sstring s 給字串賦值 void strassi...