1. 字符串處理方法:strip()函數(shù)
1.1 原型及使用方法
string.strip(s[, chars])
工作原理:首先復(fù)制源字符串,然后進(jìn)行字符串切片刪除處理。
注意:僅僅是返回一個副本字符串,并不改變源字符串,所以一般配合賦值 “ = ” 來改變源字符串。
1. 當(dāng)chars為None時,默認(rèn)刪除前后兩端空格字符,并返回處理后的字符串副本。
2. 當(dāng)chars為非None時(必須為字符串),默認(rèn)刪除前后兩端指定的chars字符,并返回處理后的字符串副本。
eg:
# 默認(rèn)None:
>>> s
' you '
>>> print(s)
you
>>> s.strip()
'you'
>>> s # 本身的 s 并沒有改變
' you '
---------------------------------------------------------
# 指定chars字符串
>>> s= 'dyouddd'
>>> s.strip('y') # 注意只對前后兩端起作用
'dyouddd'
>>> s.strip('d')
'you'
>>> s
'dyouddd'
1.2 strip()函數(shù)的常用擴(kuò)展
1.2.1 string.lstrip(s[, chars])
原理和string.strip(s[, chars])一致,只不過它是兩端刪除變成了:從開頭一端往后刪除。
eg:
>>> s=' you '
>>> s
' you '
>>> s.lstrip() # 刪除開頭端字符
'you '
>>> s
' you '
-------------------------------------------------------------
>>> s= 'dyouddd'
'dyouddd'
>>> s.lstrip('d')
'youddd'
>>>
####################################################
1.2.2 string.rstrip(s[, chars])
原理和string.lstrip(s[, chars])一致,只不過它是開頭一端刪除變成了:從結(jié)尾一端往前刪除。
eg:
>>> s=' you '
>>> s
' you '
>>> s.rstrip() # 刪除開頭端字符
' you'
>>> s
' you '
-------------------------------------------------------------
>>> s= 'dyouddd'
'dyouddd'
>>> s.lstrip('d')
'dyou'
>>>
2. range函數(shù)
2.2.1 原型
range(start, stop[, step])
解釋:
1. stop不能省略,但是start和[,step]都是可以省略的:
當(dāng)star省略時,默認(rèn)為 0
當(dāng)step省略時,默認(rèn)為 1
注意:step可以是正數(shù)也可以是負(fù)數(shù),但不能為 0,否則會報錯:ValueError
一般range配合for循環(huán)使用。
eg:
>>> range(10)
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> range(1,10)
[1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> range(0,10,2)
[0, 2, 4, 6, 8]
>>> range(0,10,-2) # 這里從0到10都是正數(shù),所以step顯然不可能有值
[]
>>> range(0,-10,-2)
[0, -2, -4, -6, -8]
>>> range(0) # 當(dāng)start省略時,默認(rèn)從0開始,此時start和step都省略,stop=0 顯然沒有數(shù)值產(chǎn)生。
[]
>>> range(0,1,0) # step=0 會引發(fā)異常
Traceback (most recent call last):
File "<pyshell#32>", line 1, in <module>
range(0,1,0)
ValueError: range() step argument must not be zero
>>> for i in range(3):
print(i)
0
1
2
>>> a,b,x=range(3)
>>> a
0
>>> b
1
>>> x
2
>>>
3. file的處理