python學習筆記 二 字串操作

2021-10-04 10:46:33 字數 2592 閱讀 6616

該一系列python學習筆記都是根據《python基礎教程(第3版)》內容所記錄整理的

所有標準序列操作(索引、切片、乘法、成員資格檢查、長度、最小值和最大值)都適用於字串,但字串是不可變的,所有元素賦值、切片賦值等操作都是非法的。

這裡設定字串格式的基本思想是對字串呼叫方法format,並提供要設定其格式的值。每個值都被插入字串中,以替換用花括號 {} 括起的替換字段。要在最終結果中包含花括號,可以在格式字串中使用兩個花括號(即})來指定,如f"}".format(a=math.pi)

在格式字串中,最重要的是替換字段。替換欄位由如下部分組成,其中每個部分都是可選的。

format = 『hello, %s. %s enough for ya』

values = (『word』,『hot』)

print(format % values)  ——> hell0, word. hot enough for ya

上述格式字串中的 %s 稱為轉換說明符,指出了要將值插入什麼地方。s意味著將值視為字串進行格式設定。

str1 = 『 』

print(str1.format(1,2,bar=4,foo=3))  ——> 3 1 4 2

指定要在字段中包含的值後,就可新增有關如何設定其格式的指令了。首先,可以提供乙個轉換標誌

print(』 』.format(pi = 『π』)) ——> π 『π』 『\u3c0』

你還可以指定要轉換的值將其視為那種型別。

print(『the float is 』.format(num=42))  ——> 42.000000 (預設保留後六位小數)

型別含義

b將整數表示為二進位制

c將整數解讀為unicode碼點

d將整數視為十進位制數進行處理,這是整數預設使用的說明符

e使用科學表示法來表示小數(用e來表示指數)

e與e 相同,但使用e來表示指數

f將小數表示為定點數

f與f 相同,但對於特殊值(nan和inf),使用大寫表示

g自動在定點表示法和科學表示法之間做出選擇。這是預設用於小數的說明符,但在預設情況下至少有1位小數

g與g 相同,但用大寫來表示指數和特殊值

n與g 相同,但插入隨區域而異的數字分隔符

o將整數表示為八進位制

s儲存字串的格式不變,這是預設用於字串的說明符

x將整數表示為十六進製制數並使用小寫字母

x與x 相同,但使用大寫字母

%將數表示為百分比值(乘以100,按說明符 f 設定格式,再在後面加上%)

寬度是使用整數指定的,如下所示:

print(''

.format

(num=3)

)  ——>

' 3'

print(''

.format

(num=

'3')

)  ——>

'3 '

如你所見,數對齊方式是向右對齊,字串是向左對齊。

精度也是使用整數指定的,如下所示:

print

('pi = '

.format

(num=math.pi)

)  ——> pi =

3.14

最後,可以使用逗號來指出你要新增的 千位分隔符

print(''

.format

(num=

1000

*1000

))  ——>1,

000,

000

三種模式可以巢狀使用,但表示千位分隔符的 ,號要放在寬度和精度之間,如:str1=

在指定寬度和精度的數前面,可以新增乙個標誌。這個標誌可以是零、加好、減號或空格,其中零表示使用0來填充數字,如:』』.format(math.pi) 『0000003.14』

指定對齊方式:左對齊( < )、右對齊( > )、居中( ^ )。

還有更具體的說明符 = ,它指定將填充字元放在符號(-/+)和數字之間。如:』』.format(-math.pi))  ——> 『- 3.14』

最後要了解的是 井號( # ),將其放在符號說明符( : )和寬度之間(如果指定了這兩種設定)。這個選項將觸發另一種轉換方式,轉換細節隨型別而異。例如,對於二進位制、八進位制和十六進製制轉換,將加上對於字首符號。

這裡只介紹比較常用的一些方法,如果想詳細了解,請查驗api。

table =

str.maketrans(

'cs'

,'kz'

)str1.translate(table)

很多字串方法都以 is 打頭,如isspace、isdigit、isuppe,它們判斷字串是否具有特定的性質(如包含的字元全為空白、數字或大寫)。如果條件滿足,則返回true,否則返回false。

isalnum、isalpha、isdecimal、isdigit、isidentifier、islower、isnumeric、isprinttable、isspace、istitle、isupper…

Python筆記(二)字串

記憶體位址 字串為不可變型別,原先指向字串的位址是不可改變的 line he line copy line print id line 2607584542648 print id line copy 2607584542648 line she he print id line 260758458...

python學習筆記3 字串

1.python當中的字串是乙個序列,可以用str i 返回字串中的各個字元。i為0或正數時,是從前向後的第i 1個字元 i為負數時,是倒數第 i個字元。想遍歷整個字串,無需先計算字串的長度再迴圈,可以很方便的使用for語句 for char in string print char 2.strin...

Python學習筆記(3) 字串

字串本身含有但雙引號 python中對於字串只需要將其用 或者 括起來即可,但是如果字串本身包含 或者 時,應該怎麼解決呢?下面用乙個例子來說明解決方法 例如 mary said i m fine 這樣表示 mary said i m fine 簡要的說就是在每乙個但雙引號的前面加上乙個 即可。字串...