第四章
1、数据容器
定义:一个可以储存多个元素的python数据类型
有哪些:list(列表)、tuple(元组)、str(字符串)、set(集合)、dict(字典)
2、列表
(1)定义语法:[元素1,元素2......]
(2)列表的常用操作方法
# 函数
def add(x,y):
return x+y
# 类
class Student:
def add(self,x,y):
return x+y
列表的方法:
列表.append(元素) :作用向列表中追加一个元素
列表.extend(容器) :将数据容器的内容依次取出,追加到列表尾部
列表.insert(下标,元素) :在指定下标处,插入指定的元素
del列表[下标] :删除列表指定下标元素
列表.pop(下标) :删除列表指定下标元素
列表.remove(元素) :从前向后,删除此元素第一个匹配项
列表ctear():清空列表
列表.count(元素):统计此元素在列表中出现的次数
列表.index(元素):查找指定元素在列表的下标,找不到报错ValueError
len(列表):统计容器内有多少元素
示例:
mylist=["itcast","itheima","python"]
# 查找元素在列表内的下标索引
index=mylist.index("itheima")
print(f"itheiam在列表中的下标索引值是:{index}")
# 如果查找的元素不存在,会报错
# index=mylist.index("hello")
# print(f"hello在列表中的下标索引值是:{index}")
# 修改特定下标索引的值
mylist[0]="修改值"
print(f"列表被修改元素值后,结果是:{mylist}")
# 在指定下标位置插入新元素
mylist.insert(1,"best")
print(f"列表插入元素后,结果是:{mylist}")
# 在列表尾部追加单个新元素
mylist.append("单个元素")
print(f"在列表尾部追加单个新元素后,结果是:{mylist}")
# 在列表尾部追加一批新元素
mylist2=[1,2,3]
mylist.extend(mylist2)
print(f"在列表尾部追加一个新的列表后,结果是:{mylist}")
# 删除指定下标索引元素
mylist=["itcast","itheima","python"]
# 法一
del mylist[2]
print(f"列表删除元素后结果是:{mylist}")
# 法二
mylist=["itcast","itheima","python"]
element=mylist.pop(2)
print(f"通过pop方法取出元素后列表内容:{mylist},取出的元素是:{element}")
# 删除某元素在列表中的第一个匹配项
mylist=["itcast","itheima","python","itheima"]
mylist.remove("itheima")
print(f"通过remove方法移除元素后,列表结果是:{mylist}")
# 清空列表
mylist.clear()
print(f"列表被清空:{mylist}")
# 统计列表某元素的数量
mylist=["itcast","itheima","python","itheima"]
count=mylist.count("itheima")
print(f"列表中itheima的数量:{count}")
# 统计列表中全部元素数量
mylist=["itcast","itheima","python","itheima"]
count=len(mylist)
print(f"列表中元素数量总共有{count}")
运行结果:
(3)列表的循环遍历
将容器内的元素依次取出进行处理的性无能,称之为:遍历、迭代
while循环: 更灵活,适用于任何想要循环的场景
for循环:更简单,适用于遍历数据容器的场景或简单的固定次数循环场景
3、元组
(1)定义元组:(元素,元素,元素,......)
(2)元组的操作方法:
index():查找某个数据,若数据存在对应下标,否则报错
count():统计某个数据在当前元组出现的次数
len(元组):统计元组内的元素个数
# 元组的嵌套
t1=((1,2,3),(4,5,6))
print(f"t1的类型是:{type(t1)},内容是:{t1}")
# 下标索引去取内容
num=t1[1][2]
print(f"取出的元素:{num}")
# index的查找方法
t2=(2,3,4,5,8)
index=t2.index(8)
print(f"查找的元素的下标是:{index}")
# count统计方法
t3=(6,7,8,9,8,0,8)
num=t3.count(8)
print(f"元素8的数量是:{num}")
# len函数统计元组元素数量
t4=(1,2,3,4,5,6,7,8)
num=len(t4)
print(f"元组中元素有:{num}个")
# 修改元组内容
t5=(1,2,[7,8])
print(f"t5的内容:{t5}")
t5[2][0]=9
t5[2][1]=10
print(f"修改后t5的内容:{t5}")
运行结果
(3)注意事项:元组不可修改内容,但可以修改内部list的内部元素
(4)特点:和list基本相同,有序、任意数量元素、允许重复元素