1 . 初始化
In [146]: d={}
In [147]: d={‘name‘:‘zhangsan‘}
In [148]: d
Out[148]: {‘name‘: ‘zhangsan‘}
In [150]: d=dict.fromkeys(‘abc‘,‘test‘)
In [152]: d
Out[152]: {‘a‘: ‘test‘, ‘b‘: ‘test‘, ‘c‘: ‘test‘}
2.增加,修改元素
列如:
In [153]: d.update({‘age‘:20})
In [154]: d
Out[154]: {‘a‘: ‘test‘, ‘b‘: ‘test‘, ‘c‘: ‘test‘, ‘age‘: 20}
In [155]: d.setdefault(‘age‘,‘100‘)
如果键‘key‘,存在不对字典操作,如果‘key‘不存在,则添加 ‘key‘:‘test‘
Out[155]: 20
In [156]: d
Out[156]: {‘a‘: ‘test‘, ‘b‘: ‘test‘, ‘c‘: ‘test‘, ‘age‘: 20}
3.查看键值
列如:
In [157]: d.keys() \\查看键
Out[157]: dict_keys([‘a‘, ‘b‘, ‘c‘, ‘age‘])
In [158]: d.values() \\查看值
Out[158]: dict_values([‘test‘, ‘test‘, ‘test‘, 20])
In [159]: d.items() \\查看全部
Out[159]: dict_items([(‘a‘, ‘test‘), (‘b‘, ‘test‘), (‘c‘, ‘test‘), (‘age‘, 20)])
4.获取单个键值
列如:
In [165]: d
Out[165]: {‘a‘: ‘test‘, ‘b‘: ‘test‘, ‘c‘: ‘test‘, ‘age‘: 20}
In [166]: d.get(‘a‘)
Out[166]: ‘test‘
In [166]: d.get(‘a‘)
Out[166]: ‘test‘
In [173]: d.popitem() \\随机删除
Out[173]: (‘c‘, ‘test‘)
5.其他方法
列如:
In [187]: d1
Out[187]: {‘name‘: ‘lisi‘, ‘age‘: ‘20‘}
In [188]: d1.clear() \\清除所有
In [189]: d1
Out[189]: {}
In [198]: d={"name":"zhangsan","dizhi":"beijin"}
In [201]: "name" in d
Out[201]: True
In [202]: "name" not in d
Out[202]: False
In [206]: del(d[‘name‘])
set和dict类似,是一组key的集合没有value 而且keys不可以重复并且必须为不可变对象。相当于一个只有key没有value的字典。
In [209]: t1=set([1,2,3,4,5,6])
In [210]: type(t1)
Out[210]: set
2.增
例如:
In [211]: t1.add(‘abc‘)
In [215]: t1.update(a)
3.删
列如:
In [217]: t1
Out[217]: {1, 2, 3, 4, 5, 6, ‘a‘, ‘abc‘, ‘d‘, ‘f‘, ‘g‘, ‘h‘, ‘j‘, ‘s‘, ‘test‘}
In [218]: t1.discard(‘abc‘)
In [219]: t1.pop()
Out[219]: 1
In [220]: t1.pop()
Out[220]: 2
In [221]: t1.remove(‘test‘)
In [222]: t1.clear()
In [223]: t1
Out[223]: set()
4.判断
列如:
In [234]: a=set([1,2,3,4,5,6])
In [235]: b=set([2,3,4,5,6,7])
In [237]: c=set([2,3,4])
In [236]: a.isdisjoint(b)
Out[236]: False
In [238]: c.issubset(a)
Out[238]: True
In [239]: a.issuperset(c)
Out[239]: True
5.求差集
例如:
In [240]: a
Out[240]: {1, 2, 3, 4, 5, 6}
In [241]: b
Out[241]: {2, 3, 4, 5, 6, 7}
In [242]: c
Out[242]: {2, 3, 4}
In [243]: a.difference(b)
Out[243]: {1}
In [246]: a.difference_update(c)
In [247]: a
Out[247]: {1}
In [248]: b.symmetric_difference(c)
Out[248]: {5, 6, 7}
In [249]: b.symmetric_difference_update(c)
In [250]: b
Out[250]: {5, 6, 7}
6.求交集
In [254]: a=set([1,2,3,4,5,6])
In [255]: b=set([2,3,4,5])
In [256]: a.intersection(b)
Out[256]: {2, 3, 4, 5}
In [257]: a.intersection_update(b)
In [258]: a
Out[258]: {2, 3, 4, 5}
7.求并集
列如:
In [262]: a=set([1,2,3,4,5])
In [263]: b=set([5,6,7,8,9])
In [264]: a.union(b)
Out[264]: {1, 2, 3, 4, 5, 6, 7, 8, 9}
7.深拷贝
In [270]: a=b.copy()
In [271]: b
Out[271]: {5, 6, 7, 8, 9}
In [272]: a
Out[272]: {5, 6, 7, 8, 9}
In [273]: b.add("test")
In [274]: b
Out[274]: {5, 6, 7, 8, 9, ‘test‘}
In [275]: a
Out[275]: {5, 6, 7, 8, 9}
原文:https://blog.51cto.com/14400213/2537753