python容器

python 容器

容器是一种:数据类型
有四种容器:

1.列表

2.集合

3.元组

4.字典

1.列表(list(线性表))

线性表(常见的线性表:链表 数组 栈 队列) --------基础链表实现的------双链表实现的
python没有数组,数组存储空间是连续的
定义:
1.弱数据类型语言
ls = [1,2,3,4]
2.全局函数list()
ls = list()
ls = list([1,2,3,4])
python怎样访问元素?
通过下标来获取元素 ,超过角标会报错,角标也可以为负数。

遍历列表 :

1.for 循环:

ls = [1,2,3,4,5]
for i in ls:
	print(i)

结果:1,2,3,4,5

2.while循环:

ls = [1,2,3,4,5]
index = 0
while index < len (ls):
	print(ls[index])
	index +=1
	
结果:1,2,3,4,5

常用方法:
len() -----------------返回容器的长度

ls = [1,2,3,4,5]
len(ls)

结果: 5

append() -------- 像列表的尾部追加元素

ls = [1,2]
ls.append(5)

结果: ls = [1,2,5]

insert (index,object) ---------- 在列表里指定的位置添加元素

ls = [1,2,3]
ls.insert(1,9)

结果: ls = [1,9,2,3]

sort() ---------- 列表元素进行排序,整形(从小到大的顺序)

ls = [1,3,2,5,4,7,6,9,8]
ls.sort()

结果:ls = [1,2,3,4,5,6,7,8,9]

index() --------- 查看列表里某一个元素的下标(如果有多个元素,查找的角标是第一个出现的位
置),如
果列表里没有元素,会报错

ls = [1.2.3.4.5.6.7.8]
ls.index(4)

结果: 3

reverse() --------- 将列表元素进行翻转

ls = [5,4,3,2,1,]
ls.reverse()

结果:ls = [1,2,3,4,5]

remove() -------- 通过元素在列表中删除元素,如果元素不存在会报错

ls = [1,2,3,4,5]
ls.remove(2)

结果: ls = [1,3,4,5]

count()---------- 统计元素在列表中出现次数

ls = [1,1,1,2,3,4,5]
ls.count(1)

结果: 3

clear() --------清除列表

ls = [1,2,3,4,5]

结果:ls = []

copy()------- 浅拷贝 不等价于 =

ls = [1,2,3]
ls1 = [4,5]
ls = ls1.copy()

结果: ls = [4,5]

extend()------ 合并列表

ls = [1,2,3]
ls2 = [4,5]

结果: ls = [1,2,3,4,5]

pop() ------- 从列表的尾部删除元素,并且返回删除掉的元素,pop(i)------删除角标为i处的元素

ls = [1,2,3,4,5]
ls.pop()
ls.pop(3)

结果:5
结果:3

内存模型:
什么是内存?
存储数据
如何存储?
栈 : 先进后出 后进先出
队列 :先进先出 后进后出

2.集合(set)------ 哈希结构

创建集合方法
全局函数

s = set()
s = set({1,2,3,4})

s = {1,2,3,4,5}

注意:
1.s = {} ------ 表示的字典,也就是说创建集合的时候至少有一个元素
2.集合是无序,不能重复的

常见的一些方法
‘add’, ‘clear’, ‘copy’, ‘difference’, ‘difference_update’, ‘discard’, ‘intersection’,
‘intersection_update’, ‘isdisjoint’, ‘issubset’, ‘issuperset’, ‘pop’, ‘remove’,
‘symmetric_difference’, ‘symmetric_difference_update’, ‘union’, ‘update’]
clear() -------------------- 清除元素

s = set({1,2,3,4})
s.clear()

结果:set()

copy()

s = set({1,2,3,4})
n = set({5,6,7})
s = n.copy()

结果:s = {5,6,7}

remove()

n = set({5,6,7})
n.remove(6)

结果:n = {5,7}

add() ---------------- 向集合添加元素,如果添加的元素是重复的,不能够添加

n =set( {1,2,3,4})
n.add(9)

结果: n = {1,2,3,4,9}

difference() --------- 差集

y = set({1,2,3,4})
n =set({1,2,3})
y.difference(n)

结果:y = {4}

intersection()--------- 交集

y = set({1,2,3,4})
n =set({1,2,3})
y.intersection(n)

结果: y = {1,2,3}

union() -------------------并集

y = set({1,2,3,4})
n =set({1,2,3})
y.union(n)

结果: y = {1,2,3,4}

update() -------- 更新集合,合并集合

n =set({1,2,3})
n.update({8})

结果:n = {1,2,3,8}

discard()-------- 移除元素,如果元素不存在,不做任何操作

n =set({1,2,3})
n.discard(2)

结果:n = {1,3}

清屏操作:
import os
os.system(“cls”)

3.元组(tuple)

元组是有序的
元组的定义方法:

弱数据类型语言
t = (1,2,3)
全局函数tuple()
t = tuple()
t = tuple((元素1,元素2))
元组的特点:
元组是有序,---------通过下标来获取元素 下标可以是负数 但是不可以通过下标更改元素

元组是一个不可变的类型(虽然元组不可变,但是元组内的元素是可变的)
常见方法:
count()

t = ("a","b",["A","B"])
t,count("a")

结果:1

index ()

t = ("a","b",["A","B"])
t.index("a")

结果:0

面试题:
a = (1) ,a的类型是什么?

a = (1)
type(1)
结果:int

a = (1,)
type(a)
结果:tuple

4.字典(dict)

字典
dict dictionary map
以键值对存在
Key value
定义:
弱数据类型语言:
d = {“name”:“zhangsan”,“age”:“18”}

全局函数dict()
dd = dict()
dd = dict({“name”:“zhangsan”,“age”:“18”})

访问元素
通过key获取对应value ------ d[“key”],如果没有Key 会抛出异常

d = {"name":"zhangsan","age":"18"}
d["name"]

结果:zhangsan

字典[key] = 新值

d = {"name"."zhangsan","age":"18"}
d["name"] = "lisi"
d["name"]

结果:lisi

字典[新key] = 新值

d["lisi"] = "jiahao"
d["lisi"]

结果:jiahao
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值