一、字典dict

dict以键值对形式存储,创建方式是用大括号{}并用冒号分隔键和值。

>>> d={'chen':60,'zhang':80}
>>> print d
{'chen': 60, 'zhang': 80}

赋值操作

>>> d['chen']=65
>>> print d
{'chen': 65, 'zhang': 80}

取值:get()方法,可以为其设置默认值。

>>> print d.get('liu',0)
0

删除:可以用pop方法删除值,并将删除的元素返回。

d['liu']=85
>>> d
{'chen': 60, 'liu': 85, 'zhang': 80} >>> d.pop('liu')
85
>>> d
{'chen': 60, 'zhang': 80}

keys()和values()方法分别返回字典的键和值集合,虽然键值对没有特定的顺序,但是这两个方法返回的结果顺序是一致的。

>>> d.keys()
['chen', 'zhang'] >>> d.values()
[60, 80]

字典合并:使用update()方法可以两个字典进行合并。

>>> d1={'a':100,'b':99}
>>> d.update(d1)
>>> d
{'chen': 60, 'a': 100, 'b': 99, 'zhang': 80}

完整demo:

d={"chen":60,"zhang":80}
print(d) d['chen']=65
print(d) print(d.get("liu",0)) d['liu']=85
print(d)
d.pop('liu')
print(d) print(d.keys())
print(d.values()) d1={'a':100,'b':99}
d.update(d1)
print(d)

二、集合set

1.set用于存储一组不重复的key值集合,但是不存储其value。

2.set有两种创建方式:

  • 用set函数,参数是list集合,例如:s=set([1,2,3,4,5]);
  • 用大括号包起来的集合字面量,例如: s={1,3}。

3.set常用操作

  • add(key)方法向set中添加元素,如果元素已经存在则不会生效
  • remove(key)方法可以删除元素。
  • | 操作符可以取集合并集
  • & 操作符取集合交集
  • - 求两个集合的差
  • ^求两个集合的异或。
>>> s=set([1,2,3,4,5])
>>> print s
set([1, 2, 3, 4, 5]) >>> s.add(6)
>>> print s
set([1, 2, 3, 4, 5, 6]) >>> s.add(6)
>>> print s
set([1, 2, 3, 4, 5, 6]) >>> s.remove(6)
>>> print s
set([1, 2, 3, 4, 5]) >>> s1=set([3,5,7])
>>> print s&s1
set([3, 5]) >>> print s|s1
set([1, 2, 3, 4, 5, 7])
>>> print s1-s set([7])
>>> print s^s1
set([1, 2, 4, 7])
  • issubset():判断一个集合是否为另外一个集合的子集;
  • issuperset():判断一个集合是否为另外一个集合的超集。
>>> s
set([1, 2, 3, 4, 5]) >>> {1,3,5}.issubset(s)
True >>> s.issuperset({1,5})
True

如需转载,请标明原文链接:http://www.cnblogs.com/janes/

Python【3】-字典dic和集合set的更多相关文章

  1. python中字典dic详解-创建,遍历和排序

    原文地址:http://www.bugingcode.com/blog/python_dic_create_sort.html 在python的编程中,字典dic是最典型的数据结构,看看如下对字典的操 ...

  2. Python基础:字典(dict)与集合(set)

    查找场景下与列表的性能对比 字典与集合之所以高效的原因是:内部结构都是一张哈希表. 平均情况下插入.查找和删除的时间复杂度为 O(1). 假设有数量100,000的产品列表: import time ...

  3. python dict字典和set集合用法

    创建字典:键  值  key  value c = {'张三':59, '李四':60, '王五':100} #查 print(c['张三'])  #打印张三的成绩 #改 c['张三'] = 60 # ...

  4. python 全栈开发,Day7(元组转换,列表以及字典的坑,集合,关系测试,深浅copy,编码补充)

    一.元组转换 数字 tu = (1) tu1 = (1,) print(tu,type(tu)) print(tu1,type(tu1)) 执行输出: 1 <class 'int'>(1, ...

  5. python元组-字典-集合及其内置方法(下)

    列表补充 补充方法 清空列表 clear # clear 清空列表 l = [1, 2, 3, 4, 4] print(l.clear()) # clear没有返回值(None) print(l) # ...

  6. python中几个常见的黑盒子之“字典dict” 与 “集合set”

    这里说到"字典dict" 和 "集合set"类型,首先,先了解一下,对于python来说,标准散列机制是有hash函数提供的,对于调用一个__hash__方法: ...

  7. python基础之字典dict和集合set

    作者:tongqingliu 转载请注明出处:http://www.cnblogs.com/liutongqing/p/7043642.html python基础之字典dict和集合set 字典dic ...

  8. Python中字典和集合

    Python中字典和集合 映射类型: 表示一个任意对象的集合,且可以通过另一个几乎是任意键值的集合进行索引 与序列不同,映射是无序的,通过键进行索引 任何不可变对象都可用作字典的键,如字符串.数字.元 ...

  9. [转]Python 的列表解析式,集合解析式,字典解析式

    Python 的列表解析式,集合解析式,字典解析式 这三种都是 python 里面的语法糖. 语法糖,Syntactic Sugar,就是为了写程序时候少出错,发明的一些简便的方法,但不影响这个语法的 ...

随机推荐

  1. phpMyAdmin的配置

    好久没写东西了,上来记录一下今天学的一点小东西吧~ 之前搞php开发的时候,一直用的是SQLyog来操作mysql数据库的,但是今天发现sqlyog功能不是很完善,主要是我想修改数据库名,但是sqly ...

  2. UMLl类图实例

    下面是类图的实例(好像大话设计中有): UML中类图实例 接口:空心圆+直线(唐老鸭类实现了‘讲人话’):依赖:虚线+箭头(动物和空气的关系):关联:实线+箭头(企鹅需要知道气候才迁移):聚合:空心四 ...

  3. XArp汉化破解专业版,强大易用的ARP欺骗检测器

    汉化作者:Bluefish 破解来自:http://www.52pojie.cn/thread-464808-1-1.html官方网站:http://www.xarp.net/ ----------- ...

  4. 【前端】我的Gulp配置

    2. gulp + browserify /** * File Name: gulpfile.js */ // 引入 gulp var gulp = require('gulp'); // 引入组件 ...

  5. 使用Python结合Face++ API识别人脸

    Face++是北京旷视科技旗下的视觉服务平台,可以进行人脸识别.检测等功能.其人脸识别技术据悉在目前准确率较高,其API非常友好,免费使用,功能众多,而且调用几乎没有限制.这里我使用了Python调用 ...

  6. Android4.0.3 USB OTG底层插入上报过程分析(1)

    下面的两个宏是PM8058的MMP11(R15),MMP12(P15)管脚.#define EXT_CHG_VALID_MPP 10#define EXT_CHG_VALID_MPP_2 11 sta ...

  7. 第十一章 GUI 上

     第11章 GUI程序设计 11.1 JFC简介 JFC(Java Foundation Class) 作为CUI(Graphic User Interface)设计的基础.JFC包含AWT(Abst ...

  8. Cheatsheet: 2016 08.01 ~ 08.31

    .NET Getting Started with ASP.NET Core and VS Code Coding Standard Best Practices In C# Wire – Writi ...

  9. MYSQL limit,offset 区别

    SELECT keyword FROM keyword_rank WHERE advertiserid' order by keyword LIMIT OFFSET ; 比如这个SQL ,limit后 ...

  10. Filter

    一.Filter简介 Filter也称之为过滤器,它是Servlet技术中最激动人心的技术,WEB开发人员通过Filter技术,对web服务器管理的所有 web资源:例如Jsp, Servlet, 静 ...