【Python初级】第5讲 数据序列之列表

本文详细介绍了Python列表的基础概念、创建方法、常用操作如查找、增加、删除元素,以及排序、循环和列表嵌套,最后通过一个将老师随机分配到办公室的实际应用示例展示其在实践中的运用。
摘要由CSDN通过智能技术生成
Python列表是一种可变的有序集合,可以用来存储多个不同类型的元素。列表使用方括号 [] 来表示,元素之间用逗号 , 分隔。以下是一些创建和操作列表的示例:
列表的格式
[数据1, 数据2, 数据3, 数据4......]
列表可以⼀次性存储多个数据,且可以为不同数据类型。

创建一个空列表: my_list = []

创建一个包含一些元素的列表: my_list = [1, 2, 3, 'a', 'b']

列表的常⽤操作

查找

 

name_list =['Tom','Lily','Rose']
print(name_list.index('Tom')) # 0
# print(name_list.index('Toms'))

print(name_list.count('Tom')) # 1
print(name_list.count('Toms')) # 0

print(len(name_list)) # 3


name_list =['Tom','Lily','Rose']

# 1. in
print('Tom' in name_list) # True
print('Toms' in name_list) # False
# 2. not in
print('Tom' not in name_list) # False
print('Toms' not in name_list) # True
增加:添加元素到列表末尾
# 1.列表数据可改的--列表可变类型
# 2.append函数追加数据的时候如果数据是一个序列,追加整个序列到列表的结尾。

name_list =['Tom','Lily','Rose']
name_list.append('xiaoming') # ['Tom', 'Lily', 'Rose', 'xiaoming']
print(name_list)

name_list =['Tom','Lily','Rose']
name_list.append([11,12]) # ['Tom', 'Lily', 'Rose',[11, 12]]
print(name_list)

name_list =['Tom','Lily','Rose']
name_list.extend('xiaoming')
print(name_list)
name_list =['Tom','Lily','Rose'] #['Tom', 'Lily', 'Rose', 'x', 'i', 'a', 'o', 'm', 'i', 'n', 'g']
name_list.extend(['11','22']) # ['Tom', 'Lily', 'Rose', 'x', 'i', 'a', 'o', 'm', 'i', 'n', 'g']
print(name_list)

name_list =['Tom','Lily','Rose']
# name_list.insert(下标,数据)
name_list.insert(1,'lilei') # ['Tom', 'lilei', 'Lily', 'Rose']
print(name_list)
删除:从列表中删除元素
# 1.del
name_list =['Tom','Lily','Rose']
del name_list
name_list =['Tom','Lily','Rose']
del(name_list)

# del 可以删除指定下标的数据
name_list =['Tom','Lily','Rose']
del name_list[0]  #['Lily', 'Rose']
print(name_list)

name_list =['Tom','Lily','Rose']
del name_list[1]  # ['Tom', 'Rose']
print(name_list)

# 2 pop() --删除指定下标的数据,如果不指定下标,默认删除最后一个数据
# 无论是按照下标还是删除最后一个,pop函数都会返回这个被删除的数据
name_list =['Tom','Lily','Rose']
name_list.pop() # ['Tom', 'Lily']
print(name_list)

name_list =['Tom','Lily','Rose']
name_list.pop(1) # ['Tom', 'Rose']
print(name_list)

name_list =['Tom','Lily','Rose']
# 1.修改指定下标的数据
name_list[0] = 'aaa'
print(name_list)  #['aaa', 'Lily', 'Rose']

修改:修改列表中的元素 

name_list =['Tom','Lily','Rose']
# 1.修改指定下标的数据
name_list[0] = 'aaa'
print(name_list)  #['aaa', 'Lily', 'Rose']

复制 

# 复制
list1=[1,3,7,5,6,2]
list2 = list1.copy()
print(list1) # [1, 3, 7, 5, 6, 2]
print(list2) # [1, 3, 7, 5, 6, 2]

 排序

# 2 逆序reverse()
list1=[1,3,7,5,6,2]
list1.reverse()
print(list1) # [2, 6, 5, 7, 3, 1]

# 3.sort() 排序:升序(默认) 和降序
list1=[1,3,7,5,6,2]
list1.sort()
print(list1) #[1, 2, 3, 5, 6, 7]

# 升序
list1=[1,3,7,5,6,2]
list1.sort(reverse=False)
print(list1) # [1, 2, 3, 5, 6, 7]

# 降序
list1=[1,3,7,5,6,2]
list1.sort(reverse=True)
print(list1)

列表的循环遍历 

使用循环遍历列表中的元素

name_list =['Tom','Lily','Rose']

# 方法1
i = 0
while i < len(name_list):
    print(name_list[i])
    i+=1

# 方法2
for i in name_list:
    print(i)

列表嵌套

name_list=[['小明','小红','小绿'],['Tom','linda','Jack'],['张三','李四','王五']]
print(name_list[2]) # ['张三', '李四', '王五']
print(name_list[2][1]) # 李四

 综合应⽤

需求:8位老师,3个办公室,将8位老师随机分配到3个办公室
import  random
#1 准备数据
teachers = ['A','B','C','D','E','F','G','H']
offices=[[],[],[]]
# 2.分配老师到办公室-- 取到每个老师放到办公室列表--遍历老师列表数据
for name in teachers:
    # 列表追加数据
    num = random.randint(0,2)
    offices[num].append(name)

print(offices)
i = 1
for office in offices:
    print(f'打印办公室{i}人数{len(office)},老师分别是:',end='')
    for off in office:
        print(off,end='\t')
    print()
    i+=1

  • 10
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值