序列:
一个用于存储多个值的连续空间
每个值都对应一个整数的编号,叫做索引
索引分为:正向递增索引、反向递减索引
序列结构实例:
字符串、
列表、元组、(有序序列)
集合、字典(无序序列)
列表、元组、集合、字典这四个又被称为Python中的组合数据类型
# 使用索引去检索字符串中的元素
# 正向递增索引
s='helloworld'
for i in range(0,len(s)): #len()内置函数获取字符串的长度
print(i,s[i],end='\t\t')
print()
# 逆向递减索引
for i in range(-len(s),0):
print(i,s[i],end='\t\t')
print()
切片操作:
访问序列元素的一种方法
可以用于所有的序列类型
语法结构
序列[start:end:strp]
'''
start:切片的开始索引(包含)
end:切片的结束索引(不包含)
step:步长,默认为1
'''
切片实例:
s='helloworld'
# 切片操作
s1=s[0:5:2]
print(s1)
#省略了开始位置,start默认为0
s1=s[:5:1]
print(s1)
# 省略步长,默认为1
s1=s[0:5:]
print(s1)
# 省略结束位置,默认到最后
s1=s[0::1]
print(s1)
# 这两个等效,都是从5开始
print(s[5::])
print(s[5:])
# 若步长为负数,就是逆序输出,从最后一个索引开始往前打印,补偿绝对值作为步长
print(s[::-1])
print(s[-1:-11:-1])
关注一下步长作为负数的情况
# 序列的相加操作
s='hello'
s2='world'
print(s+s2)
# 序列的相乘操作
print(s*5)
操作符/函数 | 描述说明 |
---|---|
x in s | 若x是s的元素,结果为True,否则为False |
x not in s | 与上面反过来 |
len(s) | 序列s中元素的个数(即序列的长度) |
max(s) | 序列s中元素的最大值 |
min(s) | 序列s中元素的最小值 |
s.index(x) | 序列s中第一次出现元素x的值 |
s.count(x) | x在序列s中出现的总次数 |
s='helloworld'
print('e在s中存在吗','e' in s)
print('v在s中存在吗','v' in s)
print('e在s中不存在吗','e' not in s)
print('v在s中不存在吗','v' not in s)
# 关于序列的内置函数的使用
print('len()',len(s))
print('max()',max(s))
print('min()',min(s))
# 序列对象的方法(使用序列的名称,打点调用)
print('s.index(x)',s.index('o')) # 'o'在s中第一次出现的位置
print('s.index(x)',s.index('v')) # 'v'在s中不存在,此时会报错
print('s.count(x)',s.count('o')) # 统计'o'在s中出现的次数
一个序列类型
一系列按照特定顺序排列的元素组成
字符串类型、整数类型、浮点数类型都是不可变数据类型
列表是可变数据类型,又叫做可变序列
使用[]
定义列表,元素和元素之间使用英文的逗号分隔
列表中的元素可以是任意的数据类型,元素与元素之间的数据类型可以不一致
1、
使用[]
直接创建列表
列表名=[element,element2,...elementN]
2、
使用内置函数list()创建列表
列表名=list(序列)
del 列表名
# 列表的创建和删除
# 第一种创建列表的方式
lst=['hello','world',98,100.5]
print(lst)
# 第二种创建列表的方式
lst2=list('helloworld')
print(lst2)
lst3=list(range(1,10,2))
print(lst3)
lst4=list(['1',2,'3'])
print(lst4)
# 列表式序列中的一种,对序列的操作符,运算符,函数均可以使用
print(lst+lst2+lst3)
# 序列的相乘
print(lst*3)
# 求序列的最大最小值
print(max(lst3))
print(min(lst3))
# 统计
print(lst2.count('o'))
# 查找
print(lst2.index('o'))
# 删除列表
del lst4
for index,item in enumerate(lst):
输出index和item