W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
1. 基本操作
1)使用 + 連接
>>> "abc"+"efg"
'abcefg'
>>> a="abc"
>>> b="efg"
>>> c=a+b
>>> c
'abcefg'
>>>
2)使用 * 重復(fù)
>>> "abc"*3
'abcabcabc'
>>> "abc\n"*3
'abc\nabc\nabc\n'
>>> print("abc\n"*3)
abc
abc
abc
>>>
3)字符串不能使用 + 連接數(shù)字
>>> "abc"+9
Traceback (most recent call last):
File "", line 1, in
"abc"+9
TypeError: Can't convert 'int' object to str implicitly
4)使用 for 來(lái)迭代
>>> a="abcdefg"
>>> for x in a:print(x)
a
b
c
d
e
f
g
5)使用 in 來(lái)找字符,后面我們還會(huì)說(shuō)到 str.find() 方法,跟 in 非常相似
>>> a="abcdefg"
>>> "h" in a
False
>>> "abc" in a
True
>>>
2. 索引與分片
1)索引
字符串可以通過(guò)索引來(lái)查找想要的字符,而且索引分成正負(fù),通過(guò)不同的查詢方向來(lái)查找
>>> a="abcdefg"
>>> a[0],a[1],a[5]
('a', 'b', 'f')
>>> a[-2],a[-1],a[-5]
('f', 'g', 'c')
>>>
2)分片,說(shuō)白了就是提取字符串的某些部分,而且當(dāng)索引使用負(fù)數(shù)則返回空
>>> a="abcdefg"
>>> a[1:]
'bcdefg'
>>> a[1:3]
'bc'
>>> a[-1:3]
''
>>>
我使用一張圖來(lái)說(shuō)明一下這個(gè)分片是怎么分的,以 a[1:3] 為例子
從圖上面我們比較清楚情況,對(duì)于 1,他是把指針?lè)诺絘的后面,從 b 開(kāi)始數(shù),a 不算,然后后面的 3,他是把指針?lè)诺?d 的前面,不算 d
所以返回的只有 bc
還有需要特殊說(shuō)明一些例子:
a[1:] 從第二個(gè)字符開(kāi)始到結(jié)束
a[:3] 從第一個(gè)字符開(kāi)始到第二個(gè)字符,也就是第三個(gè)字符前
a[:] 復(fù)制所有字符
其實(shí)還有第三個(gè)參數(shù),步進(jìn),說(shuō)白了,就是跳著選,就是要看跳幾個(gè)而已
>>> a="abcdefghijklmn"
>>> a[2:8:2]
'ceg'
>>> a[::3]
'adgjm'
>>>
a[2:8:2] 代表從第三個(gè)字符開(kāi)始抽取,到第八個(gè)之前也就是第七個(gè),然后每隔 2 個(gè)挑一個(gè)出來(lái)
a[::3]代表從所有字符中每隔3個(gè)挑一個(gè)出來(lái)
如果步進(jìn)是復(fù)數(shù),則反著挑
3. 字符串轉(zhuǎn)換 str()與 repr()
>>> str(42)
'42'
>>> repr(43)
'43'
區(qū)別,在使用 print 的時(shí)候,repr 多了一對(duì)單引號(hào)
>>> print(str('aaa'),repr('aaa'))
aaa 'aaa'
4. 修改字符串
字符串是不可以修改的,那么怎么修改呢?
其實(shí)過(guò)程是我們從一個(gè)字符串里面抽取某些字符,然后在加上其他的字符,形成新的字符串對(duì)象
>>> a="abcdefghijklmn"
>>> id(a)
24338048
>>> b=a[1:5]+" \n this is a str"
>>> id(b)
24342896
>>> b
'bcde \n this is a str'
>>> print(b)
bcde
this is a str
>>>
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: