一、字典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