Dict:

花括号 {} 表示这是一个dict,然后按照 key: value, 写出来即可。最后一个 key: value 的逗号可以省略。

d = {

'Adam': 95,

'Lisa': 85,

'Bart': 59,

'Paul': 75

}

print d

注意: 通过 key 访问 dict 的value,只要 key 存在,dict就返回对应的value。如果key不存在,会直接报错:KeyError。

要避免 KeyError 发生,有两个办法:

一是先判断一下 key 是否存在,用 in 操作符:

if 'Paul' in d:

print d['Paul']

二是使用dict本身提供的一个 get 方法,在Key不存在的时候,返回None:

>>> print d.get('Bart')

59

>>> print d.get('Paul')

None

打印dict:

d = {

'Adam': 95,

'Lisa': 85,

'Bart': 59

}

print 'Adam:', d['Adam']

print 'Lisa:', d['Lisa']

print 'Bart:', d['Bart']

dict第一个特点是查找速度快.

dict第二个特点就是存储的key-value序对是没有顺序的,dict内部是无序的,不能用dict存储有序的集合.

dict的第三个特点是作为 key 的元素必须不可变.

d = {

95: 'Adam',

85: 'Lisa',

59: 'Bart'

}

更新dict:

d = {

95: 'Adam',

85: 'Lisa',

59: 'Bart'

}

d[72] = 'Paul'

print d

遍历dict:

d = {

'Adam': 95,

'Lisa': 85,

'Bart': 59

}

for k in d:

print k + ':',d[k]

Set:

set 持有一系列元素,这一点和 list 很像,但是set的元素没有重复,而且是无序的,这点和 dict 的 key很像。

创建 set 的方式是调用 set() 并传入一个 list:

s = set(['A', 'B', 'C'])

set不能包含重复的元素

访问set

set不能识别小写的名字,会被认为是两个不同的元素

set的特点

1.set的内部结构和dict很像,唯一区别是不存储value,因此,判断一个元素是否在set中速度很快。

2.set存储的元素和dict的key类似,必须是不变对象,因此,任何可变对象是不能放入set中的。

3.set存储的元素也是没有顺序的。

ep:

months = set(['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul','Aug','Sep','Oct','Nov','Dec'])

x1 = 'Feb'

x2 = 'Sun'

if x1 in months:

print 'x1: ok'

else:

print 'x1: error'

if x2 in months:

print 'x2: ok'

else:

print 'x2: error'

遍历set

s = set([('Adam', 95), ('Lisa', 85), ('Bart', 59)])

for x in s:

print x[0] + ':', x[1]

更新set

一是把新的元素添加到set中,二是把已有元素从set中删除。

添加:add()方法,默认加在后面,如果添加的元素已经存在于set中,add()不会报错,但是不会加进去了;

删除:remove()方法,如果删除的元素不存在set中,remove()会报错;

ep:

s = set(['Adam', 'Lisa', 'Paul'])

L = ['Adam', 'Lisa', 'Bart', 'Paul']

for x in L:

if x in s:

s.remove(x)

else:

s.add(x)

print s

To be continue.......

python中set和dict类型_python从菜鸟到小仙的成长之路-----Dict和Set类型篇相关推荐

  1. python中成语接龙游戏_python——成语接龙小游戏

    小试牛刀的简易成语接龙. 思路-- 1.网上下载成语字典的txt版本 2.通过python进行处理得到格式化的成语,并整理成字典(python字典查找速度快) 3.python程序,查找 用户输入的最 ...

  2. python中显示第三行数据_Python数据分析及可视化-小测验

    image.png 首先将5题的文件复制形成副本,如下图所示: image.png 在资源管理器的路径中输入cmd,如下图所示: image.png 在上图中输入后,按Enter键运行进入cmd窗口. ...

  3. [转载] python中for语句用法_详解Python中for循环的使用_python

    参考链接: 在Python中将else条件语句与for循环一起使用 这篇文章主要介绍了Python中for循环的使用,来自于IBM官方网站技术文档,需要的朋友可以参考下 for 循环 本系列前面 &q ...

  4. 简述python中的内存管理机制_Python中的内存管理机制

    Python是如何进行内存管理的 python引用了一个内存池(memory pool)机制,即pymalloc机制,用于管理对小块内存的申请和释放 1.介绍 python和其他高级语言一样,会进行自 ...

  5. python中for语句用法_详解Python中for循环的使用_python

    这篇文章主要介绍了Python中for循环的使用,来自于IBM官方网站技术文档,需要的朋友可以参考下 for 循环 本系列前面 "探索 Python,第 5 部分:用 Python 编程&q ...

  6. python中的变量的引用_python中的变量引用小结

    python的变量都可以看成是内存中某个对象的引用.(变量指向该内存地址存储的值) 1.python中的可更改对象和不可更改对象 python中的对象可以分为可更改(mutable)对象与不可更改(i ...

  7. python中异或怎么算_python 异或运算的前提_异或运算公式

    Python基础(10)–数字-Python-第七城市 609x288 - 73KB - JPEG Python基础(10)--数字_资讯_突袭网 609x288 - 33KB - JPEG pyth ...

  8. python中导入模块的方式_Python中几种导入模块的方式总结

    模块内部封装了很多实用的功能,有时在模块外部调用就需要将其导入.常见的方式有如下几种: 1 . import >>> import sys >>> sys.path ...

  9. python中seek(10、1)_Python中index()和seek()的用法(详解)

    1.index() 一般用处是在序列中检索参数并返回第一次出现的索引,没找到就会报错,比如: >>> t=tuple('Allen') >>> t ('A', 'l ...

最新文章

  1. Python学习之旅 —— 基础篇(二)数据类型、运算、while循环
  2. Java实体类对象修改日志记录
  3. 搭载「光线追踪」技术的次时代主机会有怎样的画面表现?
  4. java中mvc事务_关于项目中的事务问题_JavaEE框架(Maven+SpringMvc+Spring+MyBatis)全程实战教程_Java视频-51CTO学院...
  5. k8s多节点仪表盘(web界面)部署与谷歌浏览器访问k8s仪表盘问题解决!
  6. excel如何去重统计户数_公式解读第三期 单元格中数字如何去重排序?
  7. request payload怎么发_做了一个个人博客,但不知道怎么介绍
  8. Android 系统性能优化(36)---显示性能指标
  9. android耳机孔状态设置,android 耳机系统笔记2 --多媒体设备各种状态
  10. 计算机技术中采用二进制,在计算机技术中采用二进制.docx
  11. 客户端的云桌面平台配置与开启(附,登录“云电脑”与切换登录账号)
  12. java工作流_Java 实现简单工作流
  13. dell服务器开机自动进入bios设置,戴尔服务器不能进入BIOS的解决方案
  14. 【最实用的chrome插件】CSDN 浏览器插件:CSDN 开发者助手(测评手册1)
  15. 如何恢复手动删除的微信聊天记录?2个简单高效方法推荐
  16. 如何进行音频录制?实用的音频录制方法合集
  17. pythonqq刷消息_QQ快速刷幸运字符
  18. Unknown custom element: <uni-data-checkbox> - did you register the component correctly? For recursi
  19. 【转】异常清晰GeoEye-1 卫星照片来了
  20. oracle手动挂载crs盘,手动清除CRS信息

热门文章

  1. 使用Python的随机数模块 random 实现猜数字游戏
  2. 常见服务器小机型号,小机服务器一览.ppt
  3. jquery 手型 鼠标穿过时_专业电竞鼠标有什么独到之处?看完核技瑞你就知道了
  4. CTF(pwn)-格式化字符串漏洞讲解(一)
  5. 学Python一定要知道的十段经典代码
  6. python教程:几个基础类型循环删除
  7. max 安装 mysql5.x_MySQL5.7安装
  8. c语言通讯录项目(电话簿)
  9. markdown输出为pdf没有图片怎么办?
  10. centos7安装Metricbeat7.6.0采集nginx指标