第三章 使用字串
1 字串基本操作 (字串是不可變的)
索引 分片 乘法 判斷成員資格 求長度 取最小值和最大值
2 字串格式化(精簡)
示例**如下:
>>> format="hello %s %senough for ya?"
>>> values=('world','hot')
>>> print(format % values)
hello world hot enough for ya?
%s為轉換說明符,如果格式化字串中包含百分號要用%%代替
格式化實數,示例**如下:
>>> format="pi with threedecimals: %.3f"
>>> from math import pi
>>> print(format %pi)
pi with three decimals: 3.142
模版字串,示例**如下:
>>> from string import template
>>> s=template('$x glorious $x')
>>> s.substitute(x='slurm')
'slurm glorious slurm'
如果替換變數是單詞的一部分,標例**如下:
>>> s=template("it is$tastic!")
>>> s.substitute(x='slurm')
'it is slurmtastic!'
也可以使用字典變數來進行替換,示例**如下:
>>> s=template('a $thing mustnever $action')
>>> d={}
>>> d['thing']='gent leman'
>>> d['action']='show his socks'
>>> s.substitute(d)
'a gent leman must never show his socks'
注:如果替換字元中含有$符號,要用$$進行替換
3 字串格式化(完整),這個有點像c 中格式化識別符號
格式化操作符的右運算元可以是任何東西,如果右側是元組,則其中的每乙個元素都會被單獨格式化
字串格式化轉換型別
d.i 帶符號的十進位制
o 不帶符號的八進位制
u 不帶符號的十進位制
x 不帶符號的十六進製制(小寫)
x 不帶符號的十六進製制(大寫)
e 科學計數法的浮點數(小寫)
e 科學計數法的浮點數(大寫)
f,f 十進位制浮點數
g 如果指數大於-4或小於精度值則和e相同,其他情況與f相同
g 如果指數大於-4或小於精度值則和e相同,其他情況與f相同
c 單字元
r 字串
s 字串
簡單轉換 示例**如下:
>>>"price of eggs:$%d "% 42
'price of eggs:$42 '
>>>"hexadecimal price ofeggs: %x" % 42
'hexadecimal price of eggs: 2a'
>>> from math import pi
>>> 'pi: %f ....' %pi
'pi: 3.141593 ....'
>>>"very inexact estimatte ofpi: %i" %pi
'very inexact estimatte of pi: 3'
>>>"using str: %s " %42
'using str: 42 '
>>>"using repr: %r " %42
'using repr: 42 '
字段寬度和精度
>>> '%10f' %pi
' 3.141593'
>>> '%10.2f' % pi
' 3.14'
>>> '%.2f ' %pi
'3.14 '
>>> '%.5s' % 'guido van rossum'
'guido'
符號 對齊和0填充
>>> '%010.2f' %pi
'0000003.14'
-表示左對齊
>>> '%-10.2f' %pi
'3.14 '
加空格可以實現對齊的效果
>>> print(('% 5d' %10)+'\n'+('%5d' %-10))
-10+表示不管正負數都會輸出符號
>>> print(('%+5d'%10)+'\n'+('%+5d' %-10))
+10-10
4 字串方法
常用的字串常量
string.digits 包含0-9字串
string.letters 包含所有字母
string.lowercase 包含所有小寫字母的字串
string.printable 包含所有列印字元的字串
string.punctuation 包含所有標點的字串
string.uppercase 包含所有大寫字線的字串
find 在乙個較長的字串中查詢子字串
>>> 'with a moo-moo here,andmoo-moo three'.find('moo')
join 是split方法的逆方法
>>>seq=['1','2','3','4','5']
>>>seq.join(seq)
traceback (mostrecent call last):
file "", line 1,in
seq.join(seq)
attributeerror: 'list'object has no attribute 'join'
>>>sep='+'
>>>sep.join(seq)
'1+2+3+4+5'
lower返回字串的小寫字母版
replace 返加替換所有匹配字串後的字串
split 是join方法的逆方法,將字串分割成序列
strip 去掉兩側空格
translate 替換字串中的某些部分,與replace不同的是只處理單個字串
python基礎教程學習筆記三
第三章 使用字串 1 字串基本操作 字串是不可變的 索引 分片 乘法 判斷成員資格 求長度 取最小值和最大值 2 字串格式化 精簡 示例 如下 format hello s senough for ya?values world hot print format values hello world...
Python基礎教程學習筆記
第一章 快速改造 基礎知識 函式描述 abs number 返回數字的絕對值 cmath.sqtr number 返回平方根,也可以應用於負數 float object 將字串和數字裝換為浮點數 help 提供互動式幫助 input prompt 獲取使用者輸入 int object 將字串和數字轉...
python基礎教程(三)
字典由鍵及其相應的值組成,這種鍵 值對稱為項。鍵的型別 字典中的鍵可以是任何不可變的型別。成員資格 k in d查詢的是鍵而不是值 v in l查詢的是值而不是索引。字典方法 clear刪除所有的字典項 d d a 1 d b 2 d d.clear d copy返回乙個信字典,和原來的相同。d d...