欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

day4 python中的容器

程序员文章站 2022-07-14 17:41:15
...

python的容器:
list:列表
set:集合
tuple:元组
dict:字典

1、什么是容器
容器就是编程语言提供给我们开发者使用的对象(包含性质)。

2、为什么学习容器
容器用于批量的管理和操作大量数据。

3、什么时候用
(1)大量数据
(2)特殊数据

4、容器的使用:
(1)list:
有序的数列
在程序中,线性表:数组(array)、链表(list)、栈(stack)、队列(queue)
python的list底层就是基于双向链表结构设计的

如何定义list:
1)借助弱数据类型语言的特点
[] :列表是以[]的形式表现
ls = [] : 空列表
ls = [1, 2,3,4,5,6] : 创建了一个有如下元素的列表

2)借助python提供的一个全局函数创建list
ls = list()
ls = list([1,23,3,4,4554])

如何访问list中的元素(element):
线性表,都是具有下标(索引)的,访问方法:
列表对象[下标]
注意:下标从0开始,注意下标越界问题!!!
print(ls[4]) : 访问ls中的第五个元素;
ls[1] = 100 : 将ls列表中的第二个元素值修改为100。

如何统计list中的元素:
全局函数:len()

如何遍历列表:
1)使用循环遍历
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']

|-- append(元素)		# 在列表尾部追加元素
|-- insert(index, 元素)		# 在对应索引为插入元素
|-- remove(元素)		# 移除元素,如果不存在,则报错
|-- pop(index=-1)		# 默认移除最后一个元素,如果存在参数,则该参数就是要移除的下标,注意:下标有误,会抛出异常 
|-- clear()			# 清空列表
|-- reverse()			# 翻转列表元素顺序
|-- sort()			# 排序
|-- index(元素)			# 查找元素的位置
|-- count(元素)			# 统计元素的数量
|-- extend			# 合并列表
|-- copy()			# 复制列表对象,其本质是浅拷贝

(2)set(集合)
特点:1、集合中的元素具有无序性;2、集合中的元素不能重复;
注意:底层使用的hash表(哈希表)的结构设计。

定义
1)借助弱数据类型语言的特点
注意:必须要存在值,否则默认空{}是字典类型,而不是set
s = {1,2,4}
2)全局set函数
s = set()

集合的遍历
遍历只能使用for循环遍历,while没有办法遍历(无序):
for index in set1:
print(index)

常见方法:

	 'add', 'clear', 'copy', 'difference', 'difference_update', 
	 'discard', 'intersection', 'intersection_update', 
	 'isdisjoint', 'issubset', 'issuperset', 'pop',
	 'remove', 'symmetric_difference', 
	 'symmetric_difference_update', 'union', 'update']	

|-- add()		# 添加元素
|-- clear()		# 清除列表
|-- copy()		# 浅拷贝对象
|-- difference()	# 差集
|-- intersection()	# 交集
|-- union()		# 并集
|-- remove(元素)	# 移除元素,如果不存在,则报错
|-- pop(元素)		# 随机(arbitrary)移除,不存在,则报错
|-- discard(元素)	# 随机(arbitrary)移除,不存在,则什么都不做

(3)tuple(元组)
注意:不可变数据类型,就是说,它里面的元素是不允许被修改的!!
定义
1)借助弱数据类型语言的特点
注意:必须要存在值,否则默认空{}是字典类型,而不是set
s = (1,2,3)
2)全局set函数
s = tuple()

常见方法:

	|-- count		# 统计元素个数
	|-- index		# 查看元素索引位置

注意区分:
	t = (1):定义的整型变量1
	t = (1,):定义了一个名为t的元组

(4)字典:
定义:
d = {}
d = {k1: v1, k2: v2}
d = dict({…})

键值的访问方式
可以使用key访问到key对应的值
d[“k1”]
d.get(“k2”)

p[“name”] = “lisi” :增加键值对

常见方法:

	clear', 'copy', 'fromkeys', 'get', 'items',
	'keys', 'pop', 'popitem', 'setdefault', 
	'update', 'values']

	|-- clear
	|-- copy
	|-- get
	|-- keys()			# 将所有的key返回
	|-- values()			# 将所有的值返回
	|-- setdefault 
	|-- items()			# 一对一对的返回
	|-- pop(key)			# 通过key删除对应键值对 
	|-- popitem()			# 安装 LIFO (last-in, first-out) order 删除键值对

字典的遍历方式:
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)

	for (key, value) in p.items():
	     print(key, value)

	for t in p.items():
	     print(t[0], t[1])

全局函数:
print()
input()
type()
range()
list()
len()
exit()
help() # 调用帮助问题
dir() # 查询对象的所有属性或者方法
reverse() # 翻转列表

相关标签: python python

上一篇: 复习Python的Day4

下一篇: Python Day4