1 列表
1.1 列表简介
序列是 Python 中最基本的数据结构。 序列中的每个值都有对应的位置值,称之为索引(index): python中的列表(list)是一种有序且可变的集合,用于存储多个元素。 列表中的元素可以是不同数据类型,如整数、浮点数、字符串等,甚至可以包含其他列表、元组、字典和集合等。 列表使用方括号“[]”创建,元素之间用逗号“,”隔开。
# 空列表
list1=[]
# 数字
list2=[1,2,3,4,5]
# 字符串
list3=['a','bb','ccc','dddd','eeeee']
# 数字和字符串
list4=['a','bb',3,'dddd',5]
列表是可变的,可以在创建后修改、添加或删除其元素。 列表的数据项可以是不同的类型
1.2 列表操作
1.2.1 访问列表中的值
列表索引从 0 开始,第二个索引是1;索引也可以从尾部开始,最后一个元素的索引为-1,往前一位为-2,以此类推 示例:
list=[1,2,3,4,5]
# 输出整个列表的值
print(list)
# 输出列表指定位置的值
print(list[0])
print(list[-1])
print(list[len(list1)-1])
# 如果索引超过了最大的范围,就会抛出异常:list index out of range
print(list[10])
1.2.2 切片
切片指从现有列表中,获取一个子列表 遵循左闭右开原则,用法和字符串相同 格式:[开始索引:结束索引:步长] 示例:
list=[1,2,3,4,5]
print(list[1:3])
# 结束索引默认为列表的长度
print(list[1:])
# 开始索引默认为0
print(list[:3])
# 步长默认为1
print(list[0:5:2])
print(list[::-1])
1.2.3 更新列表
list=[1,2,3,4,5]
# 在列表的末尾插入新的元素
list.append(6)
print(list)
# 在列表的指定位置添加新的元素,原列表元素向后移动
list.insert(1,123)
print(list)
list=['a','bb','ccc','dddd','eeeee']
# 删除列表中匹配到的元素
list.remove('ccc')
print(list)
# 删除列表中指定位置的元素
del list[1]
print(list)
# 清空列表
list.clear()
print(list)
# 删除列表变量
del list
print(list)
list=['a','bb','ccc','dddd','eeeee']
# 获取指定索引位置元素的值,将其出栈
list.pop(1)
print(list)
# 不写位置,默认从后往前进行出栈操作
list.pop()
print(list)
list.pop()
print(list)
list1=['aaa','bbb','ccc','ddd','eee']
list2=['fff','ggg','hhh','iii','jjj']
list3=list1+list2
print(list3)
list1.extend(list2)
print(list1)
list=['a','bb','ccc','dddd','eeeee']
print(list.index('ccc'))
# 迭代列表的遍历
list=['a','bb','ccc','dddd','eeeee']
for i in list:print(i)
for j in range(len(list)):print(list[j])
# 出栈遍历列表,倒叙输出 当列表不为空时
while list:print(list.pop())
print(list)
1.2.4 列表脚本操作符
表达式 结果 描述 len([1,2,3]) 3 长度 [1,2,3]+[4,5,6] [1,2,3,4,5,6] 组合 [‘Hi!’]*4 [‘Hi!’,‘Hi!’,‘Hi!’,‘Hi!’] 重复 3 in [1,2,3] True 元素是否存在与列表中 for x in [1,2,3] print(x,end=‘’) 1 2 3 迭代
1.3 常用函数
函数 说明 len(list) 列表元素个数 max(list) 列表元素最大值 min(list) 列表元素最小值 list(seq) 将元组转换为列表
1.4 常用方法
方法 说明 list.append(obj) 在列表末尾添加新的对象 list.count(obj) 统计某个元素在列表中出现的次数 list.extend(obj) 在列表末尾追加另一个列表中的所有所有值 list.index(obj) 从列表中查找某个值第一次匹配到的索引位置 list.insert(index,obj) 将元素插入列表中的指定位置 list.pop(index) 移除列表中指定位置的元素,默认最后一个 list.remove(obj) 移除列表中第一个匹配到的值 list.reverse() 反向列表中的元素 list.sort(key=None,reverse=False) 对列表进行排序,默认升序 list.clear() 清空列表 list.copy() 复制列表
2 元组
Python 的元组(tuple)与列表类似,不同之处在于元组的元素不能修改 。 元组创建很简单,只需要在小括号( )中添加元素,并使用逗号隔开即可。
tup1=(1,2,3,4,5)
tup2=('a','bb','ccc','dddd','eeeeee')
tup3=('a','bb',3,4,5)
python允许创建空元组 元组中只包含一个元素时,需要在元素后面添加逗号’,‘,否则括号会被当作运算符使用
tup1=()
print(type(tup1))
tup2=('a')
print(type(tup2))
tup3=('a',)
print(type(tup3))
2.1 元组的操作
元组可以使用下标索引来访问元组中的值,详情参考列表
tup1=(1,2,3,4,5)
print(tupl)
print(tupl[0])
元组中的元素值是不允许修改的,但可以对元组进行连接组合
# 合并后的元组是一个新的元组,
tuple1=(1,2,3,4,5)
tuple2=(6,7,8,9,10)
print(tuple1)
print(id(tuple1))
tuple1=tuple1+tuple2
print(tuple1)
print(id(tuple1))
元组中的元素值是不允许删除的,但可以使用del语句来删除整个元组 格式:del 元组
tup1=(1,2,3,4,5)
del tup1
2.2 元组的操作符
与字符串一样,元组之间可以使用+、+=和*号进行运算。这就意味着他们可以组合和复制,运算后会生成一个新的元组。
2.3 元组内置函数
函数 说明 len(tuple) 元组元素个数 max(tuple) 元组元素最大值 min(tuple) 元组元素最小值
2.4 元组是不可变的
tup1=(1,2,3,4,5)
tup1[0]=100