切片
字符串,列表等都能使用切片功能。
s = "abcdefghijkl"
print(s[1])
print(s[5])
print(s[1:5])
这段代码的含义是:在字符串里取第1个到第5个。包含第一个,不包含第5个
结果
b
f
bcde
切片的第三个参数
""" 切片的第三个参数 """
print (s[0:5:1])
print (s[0:5:2])
结果
abcde
ace
当第三个参数为1时,结果还是以前一样 当结果是2是发生了变化,结果 就从0开始隔2取值(也就是1舍弃了)
那么 s[0:5:3] 结果就是 ad ?试一下看看对不对?
参数的特殊写法
print (s[:5])
print (s[0:])
print (s[:])
结果
特殊参数
abcde
abcdefghijkl
abcdefghijkl
第一个默认不写表示 0,最后一个不写表示到尾
注意
s1="hello"
print ("s1的长度%d" % len(s1))
"""
len(s1) = 5
最后一个下标是 4 ,因为从0开始
"""
print (s1[4])
""" 这里是不包含最后一个 o 的 """
print (s1[0:4])
""" 切片可以支持 大于长度的值,但是结果 还是取总长度"""
print (s1[0:10])
结果
s1的长度5
o
hell
hello
反序切片 (从后往前)
print ("反序切片")
print (s[5:0:-1])
结果
反序切片
fedcb
不包含 "a",也就是 s[0]
全部反序
print (s[::-1])
看看结果 是什么?