Day07容器类型

01.认识列表

列表(list):

1.什么是列表

是python中的容器类的数据类型,可以用来存储多个数据。可变的,有序的
可变指的是列表中的元素的值和位置以及列表的长度可变--> 可变决定列表可以增删改
有序--> 决定可以通过下标来获取元素

2.字面量

[元素1,元素2,元素3....]
列表中元素可以是任何类型的数据--> 整数,浮点数,布尔,字符串,字典,列表,元祖,集合,函数等都可以作为列表的元素。

list1 = [1,23,'abc',True,False] #声明一个变量list1,给他赋了一个列表,列表有5个元素

声明一个列表,有三个元素,分别是[1,2],'abc',False
list2 = [
[1,2],
'abc',
False
]
name = '叶修'
names = ['小明','小花','小米',name] # 变量也可以作为列表的元素
print(names)

02.获取列表元素

1. 获取单个元素(和字符串一样)

格式:列表[下标]
说明;列表一旦确定,列表中每个元素的下标就确定了。下标范围和字符串一样,0--长度-1或者-1~~负-的长度
单取的时候下标也不能越界,不能超出列表的长度


获取元素格式
2. 获取部分的元素(切片)--->列表切片的结果是 列表。字符串切片的结果是字符串

和字符串一样。
列表[起始下标;结束下标],-->起始下标获取到结束下标前一个
列表[起始下标;结束下标:步长]


切片格式

03.元素的增删改

films = ['绿巨人','钢铁侠','蜘蛛侠','美国队长']

1.增加(增加元素)

a.列表.append(元素)---> 在列表最后添加一个元素


在最后增加元素

b.列表.insert(下标,元素)-->在指定的下标前去添加指定的元素


在指定下标前面增加元素
2.删(删除列表中的元素)

a.
del 列表[下标]--> 删除列表中指定位置的元素
del语句是python中用来删除数据的语法。

del格式删除

b.
列表.remove(元素)---> 删除列表中指定的元素
如果元素在列表中有多个,remove只删除第一个。 而del下标
就可以删除指定位置的那个元素


remove格式删除

c.
列表.pop() --> 将列表中的最后一个元素取出(取出来也是在列表中去除 ,但元素还在,可以另外取出来)
列表.pop(下标) --> 将列表中指定下标对应的元素取出来


pop格式删除
3. 改(修改列表中的元素)

列表[下标] = 新值 -->修改指定下标对应的元素


修改元素格式

4.课堂练习

1. 遍历列表中的元素

for 循环变量列表,拿到的就是列表中的每个元素


for在列表中取值
1 .用一个列表,保存一个班5个学生的成绩,去求这个班的学生的总成绩
格式
2. 用一个列表,保存多个人的名字,英文的,将列表中所有人的名字首字母大写
方法1

方法2
3.删除上一个列表中名字首字母是h的人的名字。
方法1

方法2
用一个列表保存一个班的学生的成绩,删除不及格的学生
删除元素

5.列表相关运算

1. +

列表1 + 列表2 --> 将列表1和列表2中的元素合并,产生一个新的列表,并不是改变之前的列表1


产生新的列表
2. *

列表*n——> 将列表中的元素重复N此 ,产生一个新的列表

3.比较运算
顺序也要一样

列表1 == 列表2 --> 判断两个列表中的元素是否相等

补充:

比较是否相等的两钟方式, == 和 is
一个变量有id、value和type三个元素
id -->地址(数据在内存中存储的地址)
value——>数据的值
type——> 数据的类型
python中变量处处数据的时候存的是数据的地址id,取出来的是数据的值value,
== --> 判断的是值是否相等
is ——> 判断的地址是否相等 是否在一个地址里面存储(面试!)

注意存储形式
两个列表比较大小,比较的每个元素的大小(了解)
挨个比较元素

6.列表赋值

列表赋值
总结:用一个列表给另外一个列表赋值的时候,要注意如果是直接赋值,可能会修改其他一个列表的元素二影响另外一个列表。如果想互不影响,就赋值的时候对原列表切片或者拷贝
重新赋值

7.列表相关方法

1. in 和 not in

元素1 in 列表2 ——> 元素1是否是列表2的元素
元素1 not in 列表2 --> 元素1是否不是列表2的元素


[1,2,3]是整体
2.len()

len(列表) --> 获取指定列表的长度


获取列表长度
3. max()和min()

max(列表)-->获取列表中最大的元素
min(列表)-->获取列表中最小的元素
要求:a. 列表中的元素类型要一致 b.列表中的元素是支持 > 符号操作

获取最大最小元素
4 list()

list(数据)-->将指定的数据转换成列表类型
注意:只有序列可以被转化成列表
序列: 字符,range,列表,字典,元祖,迭代器,集合


字符串转换列表
5. count()

列表.count(元素) --> 获取指定的元素在列表中的个数


获取指定元素个数
6. extend()

列表.extend(序列)-->将序列中的每个元素添加到列表里面


添加序列中的元素
7. index()

列表.index(元素)--> 获取指定的元素在列表中的下标

获取列表中元素下标
8 .reveres()

列表.reverse()-->将列表中的元素倒序


倒序格式
9 . sort()

列表.sort()--> 将列表中的元素升序排序(从小到大)
列表.sort(reverse=True)-->将列表中的元素降序排序(大到小)
sorted(列表)-->将列表中的元素升序排序产生一个新的列表,不会改变原列表
sorted(列表,reverse=True)-->将列表中的元素降序排列后产生一个新的列表,不会改变原列表
注意:要求:a. 列表中的元素类型要一致 b.列表中的元素是支持 > 符号操作


格式
10.clear()

列表.clear()--> 清空列表中的元素


清空列表中的元素
11. copy()

列表.copy()--> 将列表中的元素复制一份产生一个新的列表,和列表[:]的效果是一样的


复制列表

你可能感兴趣的:(Day07容器类型)