python中的字典和set集合

python内置字典(dict)

在其他语言中这个字典结构也被成为map集合,使用键值的方式存储,具有极快的查询速度.
下面就来定义一个dict

d = {'bob':95,'peter':55}
d['bob']

这就是一个简单的dict结构,在使用list的时候,list越大越长,使用起来的速度越慢,dict使用的索引不会因为数据量变大而变慢.

在dict中存取元素

我们取元素依靠索引可以很方便的取得dict中的元素,存的时候只需要给索引赋值即可,而且多次赋值会出现覆盖的情况.
我们根据索引取元素有时,如果不存在该索引会报错,我们使用in来确定dict中是否包含该索引的元素.而且还可以使用get()方法,如果没有key,那么就会返回none.注意返回空值,不会显示任何东西.

在dict中删除一个元素

我们同样使用pop(key)来删除一个元素

需要注意的是dict内部存放的顺序和key放入的顺序没有关系

list和dict的区别


  1. dict查询和插入速度都是极快的,不会因为key的增加而变慢
  2. dict需要大量内存,内存浪费多

dict是用内存来换取时间的一种方式.
同样需要牢记的dict的key是一个不可变对象
在python中字符串和整数都是不可变的,可以放心使用来当做key,由于list是可变的,不能当key

set集合

set和dict有些类似,也是一组key的集合,但是不存储value.由于key不能重复,索引set中没有重复的元素

创建一个set集合

s =set([1,2,3])
s
{1,2,3}

需要注意的是set会自动过滤重复的元素

添加元素到set

在理使用add(key)可以重复添加,但是不会有任何的效果

移除set中的元素

使用remove(key)的方法来删除一个元素

set可以看成数学上无序和无重复元素的集合,连个set几个可以做交集和并集

不可变对象

对于不可变对象来说,调用对象自身的任意方法,也不会改变该对象自身的内容,相反这些方法会创建新的对象并返回,这样,就可以保证不可变对象本身永远是不可变的.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值