00103 python字符串操作總結【更新中】

  • 倒序排列字符串:str[::-1]

  • str[::2]:隔一個取一個字符——'abcde'[::2]   >>>'ace'

  • 字符串切片:用切片操作符
[a:b]:截取索引爲a到b-1的字符
[:a]:索引爲0到a-1的字符
[:5]:截取前五個字符
[:-5]:截取從第一個到倒數第五個字符(注意這種寫法也是可以的)
[a]:截取索引爲a的字符

          
  • 分割字符串,並將分割結果放在一個列表裏返回:str.split("x")
    • x是用來分隔的識別符,可以是標點符號,字母,默認值是空格
    • 被用來當作分隔符的字符會被忽略,不顯示在結果中
            
  • 將列表元素拼接成字符串:'x'.join(list_name)
    • x是拼接符號,如果不給出的話,就直接拼起來
          
  • 字符串替換
    • str.replace('a','b')
      • 會將str中所有的a都替換成b
      • a和b必須都是字符串對象,可以是變量
  • 大小寫轉換:
    • 大寫變小寫:str.lower()
    • 小寫變大寫:str.upper()
    • 首字母大寫:str.capitalize() ——同時會默認將其他字母都變成小寫
    • 字符串中每個單詞的首字母大寫:str.title() ——同時會默認將其他字母都變成小寫
           
  • 大小寫判斷:返回True/False
    • 判斷是否爲全部大寫:str.isupper()
    • 判斷是否爲全部小寫:str.isfloor()
    • 判斷是否爲全部大寫:str.istitle()
          
#slice test
t=[0,1,2,3,4,5,6,7,8,9]
print t[:]            >>>[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
print t[1:]           >>>[1, 2, 3, 4, 5, 6, 7, 8, 9]    #[a:]從a開始切
print t[:1]           >>>[0]                            #[:a]切到a-1
print t[1:3]          >>>[1, 2]                         #[a:b]從a切到b-1
print "-------------------------------"
print t[::3]          >>>[0, 3, 6, 9]                   #第二個冒號之後跟的是取數頻率
print t[::2]          >>>[0, 2, 4, 6, 8]
print t[1::2]         >>>[1, 3, 5, 7, 9]                #第一個冒號是取數區間,還是想怎麼寫都行
print t[1::3]         >>>[1, shu, 7]                    #能看出來順序是先切片再按頻率取數
print "-------------------------------"
print t[::-1]         >>>[9, 8, 7, 6, 5, 4, 3, 2, 1, 0] #這是反向序列
print t[1::-1]        >>>[1, 0]                         #不是先切片再反向,也不是先反向再切片
print t[:2]           >>>[0, 1]                         #上面的結果是這個的反向
#感覺這裏似乎只能理解爲,:-1對整個[1:]都做了一個反向,從而導致它本來應該從第二個數切到最後一個數,反向之後就變成了從第一個數切到第二個數了
print t[1::-2]        >>>[1]                            #-2應該是對[1,0]從後到前按2爲頻率取數
#:-2就可以拆分成-和2來理解,-對整個[1:]都做了一個反向,取出[0,1]後再反向變成[1,0],然後2按頻率倒向取出了1
#對上述理解方式再驗證
print t[:4]           >>>[0, 1, 2, 3]        
print t[3::-1]        >>>[3, 2, 1, 0]
print t[4:]           >>>[4, 5, 6, 7, 8, 9]
print t[:3:-1]        >>>[9, 8, 7, 6, 5, 4]

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章