python字符串的遍历和切片

python字符串的遍历和切片

下标(索引),在计算机中,从0开始

1.遍历

字符串是可迭代对象

while遍历

msg = 'hello world'
i = 0
while i < len(msg):
    print(msg[i])
    i += 1

for遍历

msg = 'hello world'
for x in msg:
    print(x)

2.切片

切片:截取对象的一部分的操作。

字符串、列表、元组支持切片,因为都有下标

  • 切片的语法:[起始 : 结束 : 步长]

中间用冒号(:)隔开

不包含结束

步长表示选取的间隔,默认为1

hello world的下标:

h e l l o w o r l d
0 1 2 3 4 5 6 7 8 9 10
-11 -10 -9 -8 -7 -6 -5 -4 -3 -2 -1
s='hello world'

print(s[4]) #o【下标为4的元素】
print(s[3:7]) #lo w【包含下标3,不含下标7】
print(s[1:]) #ello world【从下标1开始,到结尾】
print(s[:4]) #hell【从开始,到下标4的前一个,不含下标4】
print(s[:]) #hello world【所有元素,从头到尾】

print(s[-5]) #w【倒数第5个元素】
print(s[-4:-1]) #orl【从倒数第4个,到倒数第1个(不含倒数第1个)】
print(s[-5:]) #world【从倒数第5个,到结尾】
print(s[:-8]) #hel【从头开始,到倒数第8个(不含倒数第8个)】

print(s[6:10:2]) #wr【步长为2,不含下标10】
print(s[::]) #hello world【所有元素,同s[:]】

print(s[10:6:-1]) #dlro【步长为负数,倒着取,不含下标6】
print(s[-1:-5:-1]) #dlro倒着取,从倒数第1个,到倒数第5个(不含倒数第5个)】
print(s[-9::-1]) #leh【倒着取,从倒数第9个,到开始】
print(s[:-5:-1]) #dlro【倒着取,从结尾,到倒数第5个(不含倒数第5个)】

print(s[::-1]) #dlrow olleh【逆置,从结尾到开头,倒着取】

索引:通过下标取一个元素

切片:通过下标取一段元素

你可能感兴趣的:(Python,python)