python之字典和集合

字典

字典的创建

>>> a = {‘one‘: 1, ‘two‘: 2, ‘three‘: 3}
>>> b = dict(one=1, two=2, three=3)
>>> c = dict([(‘two‘, 2), (‘one‘, 1), (‘three‘, 3)])
>>> a == b == c
True
>>> d = {}.fromkeys((‘x‘, ‘y‘), 1)
>>> d
{‘y‘: 1, ‘x‘: 1}

访问字典中的值

d[key]
d.get(key)
d.items(), d.keys(), d.values()
d.iteritems(), d.iterkeys(), d.itervalues()
>>> ‘x‘ in d
True

更新字典

>>> d[‘x‘] = 2    # 更新
>>> d[‘z‘] = 2    # 插入
>>> d2 = dict(one=1, two=2)
>>> d3 = dict(one=10, ten=100)
>>> d2.update(d3)
>>> d2
{‘two‘: 2, ‘ten‘: 100, ‘one‘: 10}

删除字典元素

del d[key]
d.pop(key[, default])
d.clear()

拷贝字典

d.copy()   # 注意是浅拷贝

集合

集合(sets)有两种不同的类型,可变集合(set) 和 不可变集合(frozenset)。
对可变集合(set),可以添加和删除元素,对不可变集合(frozenset)则不允许这样做。

创建集合

>>> t = set("Hello")
>>> t
set([‘H‘, ‘e‘, ‘l‘, ‘o‘])    #注意只有一个l
>>> set([ 1, 2, 3, 4, 1, 2])
set([1, 2, 3, 4])

访问集合中的值

>>> ‘H‘ in t
True
>>> for i in t:
        print i

集合的运算

a = t | s          # t 和 s的并集
b = t & s          # t 和 s的交集
c = t – s          # 求差集(项在t中,但不在s中)
d = t ^ s          # 对称差集(项在t或s中,但不会同时出现在二者中)

更新集合

>>> t.add(‘m‘)
>>> t
set([‘H‘, ‘m‘, ‘e‘, ‘l‘, ‘o‘])
>>> t.update(‘world‘)
>>> t
set([‘e‘, ‘d‘, ‘H‘, ‘m‘, ‘l‘, ‘o‘, ‘r‘, ‘w‘])
>>> t.remove(‘m‘)
>>> t
set([‘e‘, ‘d‘, ‘H‘, ‘l‘, ‘o‘, ‘r‘, ‘w‘])
>>> t -= set(‘world‘)
>>> t
set([‘e‘, ‘H‘])

ps:集合可用来列表去重

>>> [i for i in set([11,22,33,44,11,22])]
[33, 11, 44, 22]  

2015-05-26

时间: 2024-10-24 17:17:08

python之字典和集合的相关文章

Python 之字典与集合

进入python的字典与集合的学习. 先回顾下集合. 在python中,集合用set表示.花括号与set()可以用来创建集合. 还是先创建一个空的集合 不能用s={}来创建一个集合,创建一个空的集合使用set(). 集合是无序的,不重复的,所以在创建集合的时候重复的元素会被去掉. 集合的基本运算: 交    & 并    | 差    - 对称差 ^ 举个例子: 设集合s1={1,2,3,4},集合s2={2,3,5} 则: >>> s1={1,2,3,4} >>&g

Python的字典和集合

字典 字典是Python种唯一的映射类型.映射类型中的数据是无序排列的.在映射类型种,我们使用键直接‘映射’到值,这就是为什么叫映射类型的原因,映射类型通常被称做哈希表,因为字典对象就是哈希类型的.哈希表的算法是获取键,对键执行一个叫做哈希函数的操作,并根据计算的结果,选择在数据结构的某个地址中来存储值.任何一个值存储的地址取决于它的键,因此,哈希表中的值是没有顺序的.哈希表有一个很好的性能,因为用键查询相当快. 字典的基本操作 #字典的赋值 >>> dict1 = {} >>

Python中字典和集合

映射类型: 表示一个任意对象的集合,且可以通过另一个几乎是任意键值的集合进行索引 与序列不同,映射是无序的,通过键进行索引 任何不可变对象都可用作字典的键,如字符串.数字.元组等 包含可变对象的列表.字典和元组不能用作键 引用不存在的键会引发KeyError异常 1)字典 dict { } 空字典 { key1:value1,key2:value2,... } 字典在其它编程语言中又称作关联数组或散列表: 通过键实现元素存取:无序集合:可变类型容器,长度可变,异构,嵌套 支持的操作: len(D

Day4—python基础—字典and集合

字典就是键值对应,键唯一,无序.集合用来去重,关系测试,无序. 字典这种数据类型常用的方法有: 1.clear() print(name.clear()) 清除字典中的数据,输出结果为none 2.fromkeys() print(name.fromkeys(["c","z","p"],100)) 创建字典,通过列表的方式指定多个key,并将这些key赋予相同的值 输出结果为: {'c': 100, 'z': 100, 'p': 100} 3.g

Python中字典和集合的用法

本人开始学习python 希望能够慢慢的记录下去 写下来只是为了害怕自己忘记. python中的字典和其他语言一样 也是key-value的形式  利用空间换时间 可以进行快速的查找 key 是唯一的 不可变的类型 比如 str int 等  不能是list之类的可变类型 1.定义 定义一个字典 格式{key:value,key:value} a = {'a':80,'b':90,1:'a',2:[1,2]} print(a) 如果是定义如下 a = {'a':90,[1,2,3]:10} 则会

012.Python的字典和集合的相关函数

一 字典的相关函数 1.1 增函数 dictvar = {"a":1,"b":2} dictvar["c"] = 3 print(dictvar) 执行 [[email protected] python]# python3 test.py test.py {'a': 1, 'b': 2, 'c': 3} fromkeys() 使用一组键和默认值创建字典 (不常用 赋初始值) listvar = ['a','b','c'] res = {}.fr

Python 核心技术与实战 --02 字典和集合

什么是字典?字典是一系列由键(key) 和 值(value) 配对组成的元素集合,在python3.7+ , 字典被确定为有序(注意在3.6 中,字典有序是一个implementation detail, 在3.7 才正式成为语言特性),而在3.6 无法100% 保证有序性,而在3.6 之前是无序的,其长度大小可变,元素可以任意地删减和改变. 相比于列表和元组,字典的性能更优,特别是相对于查找/添加/删除的操作,字典都能在常数时间复杂度内完成. 而集合和字典基本相同,唯一的区别,就是集合没有键和

python基础知识——基本的数据类型2——列表,元组,字典,集合

磨人的小妖精们啊!终于可以归置下自己的大脑啦,在这里我要把--整型,长整型,浮点型,字符串,列表,元组,字典,集合,这几个知识点特别多的东西,统一的捯饬捯饬,不然一直脑袋里面乱乱的. 一.列表 1.列表的全部方法 如:['1','2'].['wupeiqi', 'alex'] 1 >>> dir(list) 2 ['__add__', '__class__', '__contains__', '__delattr__', '__delitem__', '__delslice__', '_

python 学习笔记day05-python字典和集合、条件和循环、文件和输入输出

字典和集合 字典基础操作 创建字典 通过{}操作符创建字典 通过dict()工厂函数创建字典 通过fromkeys()创建具有相同值的默认字典 >>> aDict = {'Name':'Bob','age':23}                >>> import tab                >>> bDict = dict((['name','bob'],['age',23]))                >>> p