*****************列表的定义*****************list:打了激素的数组,数组只能存储同一种数据类型的结构;*)• 定义一个空列表
In [30]: list = []In [31]: type(list)Out[31]: list• 定义一个包含元素的列表,元素可以是任意类型,包括数值类型,列表,字符串等均可。
与元组的对比,元组是不可变数据类型,不能修改元素;
*)分析列表特性
•列表的索引
In [47]: list = ['huan',21,'happy',(1,),[1,2]]In [48]: list[0] 正向索引 list[0]读取的是列表的第1个元素;Out[48]: 'huan'In [49]: list[-1] 反向索引 list[-1]读取的是列表的倒数第1个元素;Out[49]: [1, 2]In [50]: list[::-1] 列表逆置Out[50]: [[1, 2], (1,), 'happy', 21, 'huan']拿出列表的最后一个元素,最后一个元素是列表,再拿出列表的第一个元素In [54]: list = ['huan',21,'happy',(1,),[1,2]]In [55]: list[-1][0]Out[55]: 1
•列表的切片
In [60]: listOut[60]: ['huan', 21, 'happy', (1,), [1, 2]]In [61]: list[1:] 去掉列表的第一个元素Out[61]: [21, 'happy', (1,), [1, 2]]In [62]: list[:1] 显示列表的第一个元素Out[62]: ['huan']
In [64]: list[::-1] 逆序显示
In [51]: listOut[51]: ['huan', 21, 'happy', (1,), [1, 2]]In [52]: list[0:3:2] • 0代表从哪个索引开始切片;Out[52]: ['huan', 'happy'] • 3代表切片到哪个位置,并且不包含第三个索 • 2代表切片的步长;In [53]: list[0:3:1]Out[53]: ['huan', 21, 'happy']
•列表的重复和连接
In [67]: list1 = [1,2,3]In [68]: list2 = ['a','b','c']In [69]: list1 + list2 列表的连接Out[69]: [1, 2, 3, 'a', 'b', 'c']In [70]: list1*2 列表的重复Out[70]: [1, 2, 3, 1, 2, 3]
•成员操作符
*)列表的增删改查
*******增
In [84]: list.append('everyone') 在列表中加入元素,所加元素在列表最后
In [95]: list.insert(0,'fentiao') 在指定位置加入元素
In [97]: list.extend('lala') 增加多个元素在列表最后
*) *iterable代表可迭代的; *目前学习的可迭代对象有:str list tuple *
********改
通过列表的索引,对列表的某个索引值重新附值
In [120]: list[0] = 'dabai' 将列表的第一个元素改变
********查
统计某个元素在列表中出现的次数;In [124]: list = ['ha','ha','hei','you']In [125]: list.count('ha')Out[125]: 2找到某个值字在列表中的索引值;In [126]: list.index('you')Out[126]: 3
******删In [127]: listOut[127]: ['ha', 'ha', 'hei', 'you']In [128]: list.remove('ha') 删除列表中遇到的第一个value值;In [129]: listOut[129]: ['ha', 'hei', 'you']In [130]: del list[1] 删除列表中第i个索引值;In [131]: listOut[131]: ['ha', 'you']In [132]: del list 删除列表对象In [133]: listOut[133]: list
*)其他的排序及逆转In [137]: list = [1,2,3,4,5]In [138]: list.reverse() 将列表的元素逆转In [139]: listOut[139]: [5, 4, 3, 2, 1]
排序,如果都是数字,按照数字大小排序;
有字母的话,按照ASCII码来排序;
查看对应的ASCII码值
删除指定索引对应的值,默认是最后一个元素;
删除列表的指定元素,指定索引值;
练习:1.用户和密码分别保存到列表中;2.用户登录时,判断该用户是否注册;3.用户登录时,为防止***暴力破解,仅有三次机会;4.如果登录成功,显示登录成功
********列表构建栈和队列数据结构***栈栈是先进后出(LIFO)(可以想象为往箱子里放东西)
*********************栈操作******************* 1).入栈 2).出栈 3).栈长度 4).查看栈 5).退出请输入你的选择:"""
****队列queue : 先进先出(FIFO)