1.列表的应用
(1)队列
特点: 先进先出
使用场景: 银行排队,库存,秒杀,排队取餐,callcenter
append() + pop(0)
(2)堆栈
特点: 先进后出
使用场景: 出电梯
append() + pop()
2.案列
eg1: 做一个任务列表,使用队列方式,先进先出的方式,当用户输入do的时候开始做任务并弹出做的任务
注意:使用先进先出的原则 使用 列表的pop函数 每次都是先删除pop(0)
#!/usr/bin/python task = [] while True: task_name = input("请输入你要输入的任务名称:") if task_name == "do": if len(task) == 0: print("任务为空,退出程序") break else: print(task.pop(0)) else: task.append(task_name)
执行结果
eg2: 去求两个列表的交集,并且去重
注:使用了判断某一个元素是否在列表中的方法
#!/usr/bin/python num1 = [1,3,5,6,3] num2 = [3,5,3] num3 = [] for i in num1: if i in num2: if i not in num3: num3.append(i) print(num3)
执行结果:
eg3: 给一个列表做一个排序,让最大的数字放在最后
注:需要一个中间变量存大的那个然后在做交换
#!/usr/bin/python num = [1,6,4,5,10] i = 0 j = 1 while j < len(num): if num[i] > num[j]: z = num[i] num[i] = num[j] num[j] = z i += 1 j += 1 else: z = num[j] i += 1 j += 1 print(num)
执行结果: