一、python的容器
1)list
2)set
3)tuple
4)dict
what?
1、什么是容器
容器就是编程语言提供给我们开发者使用的对象(包含性质)
why?
2、为什么学习容器
大量数据的时候,批量的管理和操作大量数据
where?
3、什么时候用
大量数据处理的时候,特殊数据
how?
4、怎么用
python官方为大家提供四种常见的容器
1)list 列表
2)set 集合
3)tuple 元组
4)dict 字典
list:(列表是可以重复的)
有序的数列
在程序中,有序数列:数组(array)、链表(list)、栈(stack)、队列(queue)
python的list底层就是基于双向链表结构设计的
如何定义list
1、借助弱数据类型语言的特点
[ ] #列表是以[ ]的形式表现
ls = [ ] #空列表
ls = {1,2,3,4,5,6] #创建了一个有如下元素的列表
2、借助python提供的一个全局函数创建列表
ls = list()
访问list中的元素
线性表,都是具有下标(索引)的
列表对象[下标]
注意:下标从0开始,注意下标越界问题!!!
print(ls[4]) #访问ls中的第五个元素
ls[1] = 100 #将ls列表中的第二个元素值修改为
如何统计list中元素:
全局函数:len()
如何遍历列表
使用循环遍历
1、for循环
for index in ls2:
print(index)
2、while循环
index=0
while index < len(ls2):
print(ls2[index])
index +=1
list的常见方法:
‘append’, ‘clear’, ‘copy’, ‘count’, ‘extend’, ‘index’, ‘insert’, ‘pop’, ‘remove’, ‘reverse’, ‘sort’
1)append #在列表尾部追加元素 ls.append( )
2)insert(index,元素) #ls.insert(2,55) index为要加的数在列表中的下标,元素为想要加入数字
3)remove( ) #ls.remove( 元素) 移除元素,如果不存在,则报错,如果存在相同的元素,则删除第一个匹配到的元素
4)pop( ) #默认移除最后一个,并打印出来,如果存在参数,则该参数就是要移除的下标,注意:下标有误,会抛出异常
5)reverse( ) #反转列表元素顺序
6)clear( ) #清空列表
7)sort( ) #排序,默认升序
8)index( ) #查找元素的位置
9)count( ) #统计元素数量
10)extend #合并列表
11)copy( ) #复制列表对象,其本质是浅拷贝
二、set(集合):list是线性表,是由顺序的,set是集合,是无序的
定义:
1、借助弱数据类型语言的特点
注意:必须要存在值,否则默认空{ }是字典类型,而不是set
s = { 1,2,3}
2、全局set函数
s = set ( )
特点:1、无序的 2、不能重复的
底层使用hash表(哈希表)的结构设计的
遍历只能使用for循环遍历,不能使用while循环遍历
常见方法:
1)add( ) #添加元素
2)clear( ) #清除列表
3)copy( ) #复制列表(浅拷贝)
4)difference #差集
5)intersection #交集
6)union #并集
7)remove(元素) #移除元素,如果没有将会报错
8)pop( ) #随机移除
三、tuple(元组)
不可变数据类型,就是说,它里面的元素是不允许被修改的!!
定义 : t =( )
常见方法:
count, #统计元素个数
index #查看元素索引位置
四、字典(dict)
定义:
d = { }
d = {k1 :v1, k2 : v2}
d = dict({…})
可以使用key访问到key对应的值
常见的使用方法:
p[“name”] = “lisi” #增加键值对
1)clear
2)copy
3)get
4)keys #用列表的形式讲所有的key显示出来
5)values #用列表的形式,将所有的值显示出来
6)setdefault #设置默认值
7)items #以键值对来返回(也是以列表显示)
8)pop(key) #通过key删除对应键值对
9)popitem( ) #按照后进先出(从后往前)删除键值对
字典的遍历方式:
1、
for key in p :
print(key,p[key])
2、
for key in p.keys( ):
print(key , p.get(key))
3、
for key , value in p.items( ):
print(key, value)
全局函数:
print()
input()
type()
range()
list()
len()
exit()
help() #调用帮助问题
dir() #查询对象的所有属性或者方法