Python分割字串(String slicing)的語法如下。
Python的字串str
使用索引(index)位置來指定分割位置。
下面是基本的字串分割範例。如果是擷取子字串(substring),則開頭索引位置的字含,結尾索引位置的字不含。
s = "hello world"
print(s[0:2]) # he # 截取index 0 到 index 2(不含) 的字
print(s) # hello world #
print(s[:3]) # hel # 截取 開頭的字 到 index 3(不含) 的字
print(s[3:]) # lo world # 截取 index 3 到 最後的字
print(s[-1]) # d # 截取 index -1 的字
print(s[-3:]) # rld # 截取 index -3 到 最後的字
print(s[:-2]) # hello wor # 截取 index 0 到 index -2(不含) 的字
print(s[-11]) # h # 截取 index -11 的字
+---+---+---+---+---+---+---+---+---+---+---+
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10| positive index
+-------------------------------------------+
| h | e | l | l | o | | w | o | r | l | d |
+---+---+---+---+---+---+---+---+---+---+---+
|-11|-10| -9| -8| -7| -6| -5| -4| -3| -2| -1| negative index
+---+---+---+---+---+---+---+---+---+---+---+
如果索引位置超出範圍,會發生IndexError: string index out of range
錯誤。
s = "hello world"
print(s[11]) # Error: IndexError: string index out of range
Python的字串是不可變的(immutable),所以被分割的原始字串不會被修改,而是將分割的字串回傳。
s = "hello world"
sub = s[:4]
print(sub) # hell
沒有留言:
張貼留言