1. 程式人生 > >Python:字符串操作總結

Python:字符串操作總結

blog 數量 .com http ble 格式 如果 ext 相同

所有標準的序列操作(索引、分片、乘法、判斷成員資格、求長度、取最小值最大值)對字符串同樣適用,且字符串是不可變的。

一、字符串格式化

轉換說明符 [註]: 這些項的順序至關重要

(1)%字符:標記轉換說明符的開始

(2)轉換標誌(可選)

轉換標誌 作用
- 左對齊
+ 在轉換值之前加上正負號
““(空白字符串) 正數之前保留空格
0 轉換值位數不夠用0填充

(3)最小字段寬度(可選):轉換後的字符串至少應該具有該值指定的寬度。 [註]:如果是*,則寬度會從值元組中讀出

(4)點(.)後跟精度值(可選):

    a、如果轉換的是實數,精度值就表示出現在小數點後的位數

    b、如果轉換的是字符串,精度值就表示最大字段寬度

    c、如果是*,那麽精度值將會從元組中讀出

(5)轉換類型 [註]:紅色為常用

轉換類型 含義
d,i 帶符號的十進制整數
o 不帶符號的八進制整數
u 不帶符號的十進制整數
x 不帶符號的十六進制整數(小寫)
X 不帶符號的十六進制整數(大寫)
e 科學計數法表示的浮點數(小寫)
E 科學計數法表示的浮點數(大寫)
f,F 十進制浮點數
g 如果指數大於-4或者小於精度值則和e相同,其他情況與f相同
G 如果指數大於-4或者小於精度值則和E相同,其他情況與F相同
C 單字符(接受整數或者單字符字符串)
r 字符串(使用repr轉換的任意Python對象)
s 字符串(使用str轉換的任意Python對象)

Examples:

1 pi=3.1415926
2 print(%10f %pi) #寬度為10
3 print(%10.2f %pi) #寬度為10,精度為2
4 print(%+10.2f %pi) #寬度為10,精度為2,數字前加正負號
5 print(%0+10.2f %pi) #寬度為10,精度為2,數字前加正負號,並用0而非空格來填充
6 print(%-+10.2f %pi) #寬度為10,精度為2,數字前加正負號,並且左對齊

技術分享

1 name=Tomwenxing
2 print(%20s %name) #寬度為20
3 print(%20.3s %name) #寬度為20,精度為3
4 print(%-20.3s %name) #寬度為20,精度為3,左對齊

技術分享

1 name=Tomwenxing
2 print(%-*.*s %(20,3,name)) #使用*作為字段寬度或精度

技術分享

[註]:字典的格式化字符串

在每個轉換說明符中的%字符後面,可以加上鍵(用圓括號括起來的),後面再跟上其他說明元素。但以這種方式使用字典時,只要所有給出的鍵值都能在字典中找到,就可以使用任意數量的轉換說明符。

1 phonebook={Beth:9012,Alice:2341,Cecil:3258}
2 message="Cecil‘s phone number is %(Cecil)s" %phonebook
3 print(message)

Python:字符串操作總結