Python字符串、列表、元組切片操作,以及字符串的常用操作

本文記錄了python中字符串常用的切片操作,該操作也適用于列表、元組。同時記錄了字符串的常用操作。
'''
字符串 / 列表 / 元組 的切片操作,方式都一樣,本段以字符串為例子
基本語法:
    obj.[start:end:step]
    取值范圍為 [start - end),左閉右開,step為步長(默認大小為1,方向從左往右)(個人理解:步長 = 間隔 + 1)     
'''
s = '0123456789' 

print(s[3:7])  # 取出該索引區(qū)間(區(qū)間為:[3,7))的內(nèi)容 --> 3456
print(s[:])  # 取出s所有的內(nèi)容 --> 0123456789
print(s[2:])  # 從第2個索引處(index = 2)開始取出后面內(nèi)容 --> 23456789
print(s[:5])  # 從第0個索引處開始取出到該索引處(index = 5)的前一位的所有內(nèi)容 --> 01234
print(s[:-2])  # 從第0個索引處開始取出到倒數(shù)第2個索引處的前一位的所有內(nèi)容 --> 01234567
print(s[-4:-1])  # 從倒數(shù)第4個索引處開始取出到倒數(shù)第1個索引處的前一位的所有內(nèi)容 --> 678
print(s[1:8:2])  # 從第1個索引處(index = 1)開始,步長為2(每間隔1個字符取一位),到第8個索引處(index = 8)前一位結束 --> 1357
print(s[::-1])  # 從后向前取,步長為1,方向從右向左 (即可完成逆置字符串的功能) --> 9876543210


'''
常見的字符串操作,本例列舉27個,操作區(qū)間為左閉右開
'''
sts = 'Made in china'

print(sts.find('in'))  # 在整個sts中查找是否存在'in',若存在,返回首字母下標,否則返回-1. --> 5
print(sts.find('in', 1, 7))  # 在該區(qū)間[1, 7)中查找'in'是否存在. --> 5
print(sts.find('in', 1, 6))  # 在[1, 6)中查找'in'是否存在. --> -1
print(sts.rfind('in'))  # 功能同上,但從右向左查. --> 10

print(sts.index('in'))  # 功能同上,但若沒查找到則報異常,一般使用不帶第二、三參數(shù). -->5
# print(sts.index('in', 1, 6))  # 在[1, 6)范圍內(nèi)查找. -->  會報錯,因為該范圍內(nèi)沒有'in' 
print(sts.rindex('in'))  # 功能同上,但從右往左查. --> 10

print(sts.count('in', 0, len(sts)))  # 'in'在sts的該區(qū)間內(nèi)出現(xiàn)的次數(shù),一般可以不帶第二、三參數(shù). --> 2

print(sts.replace('e', 'f', 3))  # 將'e'替換成'f',但修改的'e'的數(shù)量不超過3次,從左往右修改,若無第三參數(shù)則默認都修改. --> Madf in china

print(sts.split('i', 2))  # 從左往右將'i'取消,第二個參數(shù)的數(shù)量,i兩邊的字符變成列表中的兩個元素,若i連續(xù),則用''代替. --> ['Made ', 'n ch', 'na']

print(sts.capitalize())  # 將字符串開頭字母大寫,其他小寫. --> Made in china
print(sts.title())  # 所有單詞的首字母大寫,其他的小寫. --> Made In China

print(sts.startswith('M'))  # 檢查字符串是否以'M'開頭,是返回True,否則返回False. --> True
print(sts.endswith('a'))  # 檢查字符串是否已'a'結尾,是返回True,否則返回False. --> True

print(sts.lower())  # 所有大寫字母轉為小寫. --> made in china
print(sts.upper())  # 小寫轉大寫. --> MADE IN CHINA

print(sts.ljust(len(sts) + 1))  # (左對齊)將sts右端添加1個空白符. --> 'Made in china  '
print(sts.rjust((len(sts) + 1))  # (右對齊)  將sts左端添加一個空白符. --> '  Made in china'
print(sts.center((len(sts) + 2))  # (居中)  將sts兩端各添加一個空白符. --> ' Made in china '

print(sts.lstrip())  # 刪除字符串左側的空白符
print(sts.rstrip())  # 刪除右側空白符
print(sts.strip())  # 刪除兩端字符串

print(sts.partition('in'))  # 將sts分割成三部分,in前面的,in和in后面的,以元組返回. --> ('Made ', 'in', ' china')
print(sts.rpartition('in'))  # 功能同上,只是從右向左分割. --> ('Made in ch', 'in', 'a')

print(sts.splitlines())  # 按照行分割成列表中不同的元素

print(sts.isalpha())  # 如果sts全部是字母,則返回True,否則False. --> False
print(sts.isdigit())  # 如果全是數(shù)字,則返回True,否則False. --> False
print(sts.isalnum())  # 如果只由字母或數(shù)字組成,則返回True,否則False. --> False
print(sts.isspace())  # 如果只有空格,則返回True,否則False. --> False

#將list中的每個元素之間插入整個sts,并將列表返回為一個字符串
list = ['b', 'e', 'i']
print(sts.join(list))  # --> bMade in chinaeMade in chinai. 若sts == '',則可實現(xiàn)list轉string


'''
順便提一下,本人目前沒有找到可直接操作字符串進行刪除某些字符的方法,
但可以通過將str轉為List之后刪除,再將List通過join()轉為str即可。有好方法的朋友請留言,感謝!
'''

結束

最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

  • 本節(jié)要介紹的是Python里面常用的幾種數(shù)據(jù)結構。通常情況下,聲明一個變量只保存一個值是遠遠不夠的,我們需要將一組...
    小黑y99閱讀 65,576評論 0 9
  • rljs by sennchi Timeline of History Part One The Cognitiv...
    sennchi閱讀 7,817評論 0 10
  • 夜晚,月影婆娑! 我孑然來到安樂園! 園子沒有門鎖,也沒有看園的人! 我竟然沒有懼怕, 只是快步走近你的安息地, ...
    唐金秀閱讀 1,019評論 22 14
  • 三月初相識 ―致好友蘭蘭 文/安琪 三月初相識 亦如舊友多年 你的笑靨如二八少年 明艷不可方物 即使包裹...
    安琪abm閱讀 129評論 0 1
  • 2016年8月是我最接近許巍的這一年。是《第三極》把我?guī)У搅宋鞑?,是《曾?jīng)的你》讓我走出了318公路,是《藍蓮花》...
    最愛你陌生人閱讀 1,020評論 2 2

友情鏈接更多精彩內(nèi)容