"""
1.8
"""
"""
序列类型
序列类型用来存储有序并且可以重复的数据,分别为以下两种类型类型:
列表list
元组tuple
"""
"""
列表用中括号表示[]
索引用来表示列表中元素的所在位置
基于位置,可以快速找到其对应的列表元素
如果一个列表中有n个元素,那么索引的取值范围是0~n-1
列表的元素可以是列表
<列表或列表变量> [索引]
ls1 = [123, 123, "abc", "bcd", "abc"]
ls1[0] = 999 # 将第0个元素赋值为999
print(ls1)
print(type(ls1))
print(ls1[0])
ls2 = ls1[::-1] # 逆序排列
print(ls2)
ls3 = [123, 123, "abc", ["abc", "bcd", "abc"], 125]
print(len(ls3))
print(ls3[3][1]) # 引用列表中的列表元素
"""
"""
列表常见函数
x in s 如果x是s的元素,返回True,否则返回False
x not in s 如果x不是s的元素,返回True, 否则返回False
len(s) 返回列表s的个数
min(s) 返回s的最小值,必须全是数值或字符串,字符串以ASCII大小比较,若是多个,则按顺序依次比较,不能是字符串和数值混用
max(s) 返回s的最大值,
s = [1.1, 2.2, 3, 4]
s_min = min(s)
s_max = max(s)
print(s_min)
print(s_max)
print(2 in s)
print(2 not in s)
s2 = ["acc", "ac", "c"]
b = min(s2)
print(b)
s3 = ["a", "A"]
print(min(s3))
"""
"""
列表常见方法
s.append (x) 在列表s末尾处理添加一个新元素x
s.insert(i,x) 在列表s第i位增加元素x
s.clear() 清空列表s中所有元素
s.pop(i) 将列表s中第i个元素删除
s.remove(x) 将列表中出现的第一个元素x删除
s.reverse() 将列表s中的元素反转,并存储在s中,等价于s=s[::-1]
s.index(x) 列表s中第一次出现元素x的位置
s.count(x) 返回列表s中x元素出现的次数
s.copy() 返回一个新列表,复制s中所有元素
s = [123, 12, 43, 56]
s1 = s # 指的是s和s1都指向同一个列表
s1[0] = 999
print(s)
print(s1) # 二者结果一样
# 若想要新的列表
s2 = s.copy()
s.reverse()
print(s)
s.clear()
print(s) # 空列表
"""
"""
空列表创建方式
1.使用[]
empty_list = []
2.使用 list() 构造函数:
empty_list = list()
或者
empty_list = list([]) # 不建议
3.用方法s.clear
s=[123]
s.clear # 多此一举的方法
"""
"""
索引index
在列表或字符串中都适用
1.访问单个元素
my_list = [1, 2, 3, 4, 5]
print(my_list[2]) # 输出:3,因为索引从0开始
2.切片
使用索引可以获取序列的子序列,称为切片。
my_list = [1, 2, 3, 4, 5]
print(my_list[1:4]) # 输出:[2, 3, 4],包含起始索引,不包含结束索引,左闭右开
3.负索引
my_list = [1, 2, 3, 4, 5]
print(my_list[-1]) # 输出:5,表示最后一个元素
print(my_list[::-1])# 逆序输出
4.步长
在切片中,可以指定步长来跳过元素。
my_list = [1, 2, 3, 4, 5]
print(my_list[::2]) # 输出:[1, 3, 5],步长为2
5.超出索引范围会报错
my_list = [1, 2, 3]
# 下面一行将引发 IndexError,因为索引 3 超出了列表的范围
# print(my_list[3])
"""