Python提供了切片(Slice)操作符:可以一次取出多個列表元素 L[0:3]表示,從索引0開始取,直到索引3為止,但不包括索引3。0可以省略:L[:3] L[:]:就是整個列表 補充: 前10個數,每兩個取一個: >>> L[:10:2] [0, 2, 4, 6, 8] s[:2:-1]表示從 ...
Python提供了切片(Slice)操作符:可以一次取出多個列表元素 L[0:3]表示,從索引0開始取,直到索引3為止,但不包括索引3。0可以省略:L[:3] L[:]:就是整個列表 補充: 前10個數,每兩個取一個: >>> L[:10:2] [0, 2, 4, 6, 8] s[:2:-1]表示從最後一個元素開始到下標為2的數截止 [:-1]:從開始第一個到最後一個的所有元素 [::-1]:從最後一個開始到第一個的所有元素 tuple也是一種list,唯一區別是tuple不可變。因此,tuple也可以用切片操作,只是操作的結果仍是tuple: 字元串'xxx'也可以看成是一種list,每個元素就是一個字元。因此,字元串也可以用切片操作,只是操作結果仍是字元串: 實例:
1 # -*- coding: utf-8 -*- 2 # 利用切片操作,實現一個trim()函數,去除字元串首尾的空格 3 def trim(s): 4 if len(s) != 0: 5 while s[:1] == ' ': 6 s = s[1:] 7 while s[-1:] == ' ': 8 s = s[:-1] 9 return s 10 # 測試: 11 if trim('hello ') != 'hello': 12 print('測試失敗!') 13 elif trim(' hello') != 'hello': 14 print('測試失敗!') 15 elif trim(' hello ') != 'hello': 16 print('測試失敗!') 17 elif trim(' hello world ') != 'hello world': 18 print('測試失敗!') 19 elif trim('') != '': 20 print('測試失敗!') 21 elif trim(' ') != '': 22 print('測試失敗!') 23 else: 24 print('測試成功!')