Python之通用序列操作

版权声明:转载请注明出处: https://blog.csdn.net/qq_33757398/article/details/82595944

1.索引

序列中的每一个元素都分配一个数字,代表它在序列中的位置(索引),第一个索引是0,第二个索引是1,以此类推

正数表示从左向右索引,负数表示从右向左索引,-1就表示右边第一个元素

hw='helloworld'
string=['LiMing','ZhangSan','LiSi']
print(hw[0])
print(hw[5])
print(hw[-1])
print(hw[-5])
print(string[0])
print(string[-1])

打印结果:

h
w
d
w
LiMing
LiSi

2.分片

索引用来对单个元素进行访问,使用分片可以对一定范围内的元素进行访问,分片通过冒号相隔的两个索引实现

1)需要提供两个索引作为边界,第一个索引的元素包含在分片内,第二个索引不包含在分片内

num = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
print(num[1:3])    #不包含4
print(num[-3:-1])  #不包含10
[2, 3]
[8, 9]

2)冒号前后可以省略一个值,或者两个值,省略左边值/右边值,表示从头/尾开始索引,省略两个值,则表示索引所有值

num = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
print(num[5:])    #从第六个元素索引到最后一个元素
print(num[:5])    #从第一个元素索引到第六个元素
print(num[-3:])   #从倒数第三个元素索引到最后一个元素
print(num[:-3])   #从第一个元素索引到倒数第三个元素
print(num[:])     #索引所有元素
[6, 7, 8, 9, 10]
[1, 2, 3, 4, 5]
[8, 9, 10]
[1, 2, 3, 4, 5, 6, 7]
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

3)若右边的索引小于左边的索引则输出一个空序列

num = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
print(num[5:2])
print(num[-3:0])
print(num[0:-3])
[]
[]
[1, 2, 3, 4, 5, 6, 7]

4)默认情况下,遍历序列的步长参数为1,我们也可以显示的设置遍历步长,正数表示从左向右遍历,负数表示从右向左遍历,步长不能为零

num = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
print(num[1:9:2])
print(num[-9:-1:3])
print(num[9:1:-2])
print(num[-1:-9:-3])
[2, 4, 6, 8]
[2, 5, 8]
[10, 8, 6, 4]
[10, 7, 4]

3.序列相加

序列相加就是将两个相同类型的序列拼接起来,但不同类型的序列不能通过加号连接

num1 = [1, 2, 3]
num2 = [4, 5, 6]
print(num1 + num2)
str1 = 'hello'
str2 = 'world'
print(str1 + str2)
[1, 2, 3, 4, 5, 6]
helloworld

4.乘法

序列乘法就是将序列重复x次

num = [1, 2, 3]
string = 'hello'
print(num * 5)
print(string * 5)
[1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3]
hellohellohellohellohello

5.成员资格

检查一个元素是否在序列中-》in 运算符,返回一个bool值,True或者False

num = [1, 2, 3, 4, 5, 6, 7, 8, 9]
string = 'helloworld'
name = ['ZhangSan', 'LiSi', 'XiaoMing']
print(5 in num)
print(15 in num)
print('w' in string)
print('a' in string)
print('LiSi' in name)
print('LiSan' in name)
True
False
True
False
True
False

6.长度、最小值和最大值

num = [1, 2, 3, 4, 5, 6, 7, 8, 9]
string = 'helloworld'
name = ['ZhangSan', 'LiSi', 'XiaoMing']
print(len(num))
print(max(num))
print(min(num))
print(len(string))
print(max(string))
print(min(string))
print(len(name))
print(max(name))
print(min(name))
9
9
1
10
w
d
3
ZhangSan
LiSi

字符串比较,从首字母开始依次比较,直到不同为止

猜你喜欢

转载自blog.csdn.net/qq_33757398/article/details/82595944