python学习 字符串遍历

遍历:依次访问字符串中的每一个字符
方式一:
for c in s:
    print(c)
方式二:
字符串的长度 = len(字符串)
for i in range(len(字符串)):
    print(s[i])
方式三:
i = 0
while i <len(字符串):
    print(s[i])
    i += 1

示例代码:

'''
python学习 字符串遍历
'''
# 遍历:依次访问字符串中的每一个字符

def test_chars(s):
# 方式一:
    for c in s:
        print(c)
# 方式二:
# 字符串的长度 = len(字符串)
    for i in range(len(s)):
        print(i,'-',s[i])

# 方式三:
    i = 0
    while i <len(s):
        print(s[i])
        i += 1
test_chars('hello')

执行结果:

python学习 字符串遍历-米宝教室

切片,字符串逆序

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

需要注意的是,选取的区间从“起始”位开始,到“结束”位的前一位结束(不包含结束位),步长表示选取间隔。

'''
python学习 切片
'''
# 字符或字符串名[起始下标:结束下标:步长]
def slice_test():
    s = '0123456789'
    c = s[2: 4]
    print(c)
    print(s)

slice_test()

执行结果:

python学习 字符串遍历-米宝教室
'''
python学习 切片
'''
# 字符或字符串名[起始下标:结束下标:步长]
def slice_test():
    s = '01234567890123456789'
    print(s[0:len(s)])
    print(s[:])  # 相当于复制
    print(s[5:]) # 从下标5开始切到最后
    print(s[:10]) # 从0开始,切到9
    print(s[3:11]) # 从3开始,切到10
    print(s[::1]) # 默认步长为1
    print(s[::2]) # 步长为2
    print(s[2:15:4]) # 从2开始,到15结束,每隔4取1个数
# 步长可以为负值,负值表示从右往左切,但是下标还是从左往右数
    print(s[10:2:-1]) # 字符串逆序
    print(s[::-1])
slice_test()

执行结果

python学习 字符串遍历-米宝教室

切片时,起始下标和结束下标都可以使用负数。

负数表示从右向左编号,第一个字符是-1

  • a b c d e f
  • -6 -5 -4 -3 -2 -1