列表:
【列表特点】
- 列表中的数据是有序的,每个数据都会分配一个数字来标识这个数据在列表中的位置,称为索引。列表中第1个元素的索引是0,第2个元素的索引是1,其他元素的索引值以此类推,是一个升序整数数列。
- 列表的大小和列表中的元素都是可变的。
- 列表可以存储不同数据类型的数据。
使用列表存储数据:
(1)创建列表
【语法】
变量=[数据1,数据2…]
代码示例
salary=[1000,5200,4700,3678,7865,9000]#创建一个列表salary将员工的月薪数据保存到列表中
print(salary)#输出 [1000,5200,4700,3678,7865,9000]
(2)使用索引访问列表数据
【列表索引的两种表现形式】
- 正向索引:列表中第一个数据值为0,最后一个数据的索引值为列表长度减1。
- 反向索引:最后一个数据的索引值为-1,第一个数据的索引值为负的列表长度。
【语法】
变量=列表[索引]
代码示例
salary=[1000,5200,4700,3678,7865,9000]#创建一个列表salary将员工的月薪数据保存到列表中
print("列表中第三个员工的月薪是%d"%(salary[2]))#正向索引,第三个员工的月薪数据索引值为2
print("列表中倒数第二个员工的月薪是%d"%(salary[-2]))#反向索引,倒数第二个员工的月薪数据为-2
输出结果:
列表中第三个员工的月薪是4700
列表中倒数第二个员工的月薪是7865
(3)更新列表中的值
列表允许对其中的数据进行添加、删除、修改等操作。
【列表常用方法】
方法名 | 功能 |
---|---|
append(obj) | 在列表末尾添加新的数据obj |
insert(index,obj) | 在列表中索引为index的位置插入新的数据obj,插入位置之后的数据索引全部自增1 |
pop(index=-1) | 移除列表总的一个元素(默认是最后一个元素),并且返回该元素的值 |
list[index]=obj | 将obj赋值给列表中索引为index的元素 |
del list[index] | 删除列表中索引为index的元素,删除位置之后的数据索引全部自减1 |
代码示例
#新招一名员工,月薪为3000,将数据加入到列表末尾
#新招一名员工,月薪为4500,将数据加入到列表索引为2的位置
#移除列表中最后一个数据,并显示被移除的数据的值
#将列表中的第2个数据的值自增100
#删除列表中第5个数据
salary=[1000,5200,4700,3678,7865,9000]
salary.append(3000)#在列表末尾添加新数据3000
print("在末尾添加新数据后的列表:")
print(salary)
salary.insert(2,4500)#在列表中索引为2的位置添加新数据4500
print("在列表中索引为2的位置添加新数据后的列表:")
print(salary)
data=salary.pop()#移除列表中最后一个数据,并显示移除数据的值
print("移除的数据的值:%d"%(data))
print("移除最后一个值后的列表:")
print(salary)
salary[1]=salary[1]+100#将列表中第2个数据的值增加100
print("将第2个值增加100后的列表:")
print(salary)
del salary[4]#删除列表中的第5个数据
print("删除第5个数据后的列表:")
print(salary)
输出结果:
在末尾添加新数据后的列表:
[1000, 5200, 4700, 3678, 7865, 9000, 3000]
在列表中索引为2的位置添加新数据后的列表:
[1000, 5200, 4500, 4700, 3678, 7865, 9000, 3000]
移除的数据的值:3000
移除最后一个值后的列表:
[1000, 5200, 4500, 4700, 3678, 7865, 9000]
将第2个值增加100后的列表:
[1000, 5300, 4500, 4700, 3678, 7865, 9000]
删除第5个数据后的列表:
[1000, 5300, 4500, 4700, 7865, 9000]
(4)遍历列表
利用for循环遍历列表中的数据
代码示例
salary=[1000,5200,4700,3678,7865,9000]
for intem in salary:#利用for循环遍历列表中的数据
print("员工的月薪是%s"%(intem))
输出结果:
员工的月薪是1000
员工的月薪是5200
员工的月薪是4700
员工的月薪是3678
员工的月薪是7865
员工的月薪是9000
利用len()、range()和for循环在遍历列表的过程中修改列表中的元素或获取当前元素在列表中的索引值
代码示例
#将所有月薪小于5000的员工月薪修改为5000,并输出其索引值。
salary=[1000,5200,4700,3678,7865,9000]
#使用len()获取列表长度,使用range()生成遍历列表的索引数列,在for循环中通过索引访问或修改列表中的元素
for index in range(len(salary)):
if salary[index]<5000:
salary[index]=5000
print("索引为%d的员工月薪小于5000"%(index))
print("修改后的列表:")
print(salary)
输出结果:
索引为0的员工月薪小于5000
索引为2的员工月薪小于5000
索引为3的员工月薪小于5000
修改后的列表:
[5000, 5200, 5000, 5000, 7865, 9000]