pop方法:
>>> mydict = {1:"apple",2:"banana"}>>> mydict.pop(2)'banana'>>> mydict{1: 'apple'}>>>
popitem()用于随机删除任意键值对
清除字典元素>>> mydict = {1:"apple",2:"banana"}>>> mydict.clear()>>> mydict{}
合并字典>>> mydict1 = {1:"apple",2:"banana"}>>> mydict2 = {3:"orange"}>>> mydict1.update(mydict2)>>> mydict1{1: 'apple', 2: 'banana', 3: 'orange'}>>> # 或者>>> {**mydict1,**mydict2}{1: 'apple', 2: 'banana', 3: 'orange'}
获取字典key , value值>>> mydict = {1:"apple",2:"banana"}>>> mydict.keys()dict_keys([1, 2])>>> >>> mydict.values()dict_values(['apple', 'banana'])
items()方法返回(key, value)对:
>>> mydict = {1:"apple",2:"banana"}>>> mydict.items()dict_items([(1, 'apple'), (2, 'banana')])
mydict = {1:"apple",2:"banana"}for key,value in mydict.items(): print(key) print(value)
python2中 , has_key()可用于判断字典是否存在某个key:
>>> mydict = {1:"apple",2:"banana"}>>> mydict.has_key(1)
python3删除了has_key()方法 , 可以使用 in 操作符来判断:
mydict = {1:"apple",2:"banana"}if 1 in mydict: print(mydict(1))# 或者if 1 in mydict.keys(): print(mydict(1))
字典排序实际应用中 , 通常需要对字典进行排序 , 一般会根据键或值 , 进行升序或降序排序:
根据字典键升序排序
>>> mydict = {1:"apple",3:"banana",2:"orange"}>>> sorted(mydict.items(), key=lambda x: x[0])[(1, 'apple'), (2, 'orange'), (3, 'banana')]
根据字典值降序排序
>>> sorted(mydict.items(), key=lambda x: x[0], reverse=True)[(3, 'banana'), (2, 'orange'), (1, 'apple')]>>>
判断一个字典是否包含另一个字典判断mydictA是否包含mydictB
>>> mydictA = {1:"apple",3:"banana",2:"orange"}>>> mydictB = {1:"apple"}>>> dict(mydictB, **mydictA) == mydictATrue
映射-Map映射和哈希表类似 , 也是存储key-value对 , 通过键(Key)查找值(Value) 。
JAVA 的HashMap() 和TreeMap()
- map.set(key, value)
- map.get(key)
- map.has(key)
- map.size()
- map.clear()
map() 根据提供的函数对指定序列进行映射 , 返回映射函数返回值的新列表 。一般结合lambda匿名函数一起使用:
>>> map(lambda x: x ** 2, [1, 2, 3, 4, 5])[1, 4, 9, 16, 25]
两个list相加:>>> list1 = [1, 2, 3]>>> list2 = [4, 5, 6]>>> map(lambda x, y: x + y, list1, list2)[5, 7, 9]
集合-Set与列表(list)类似 , 但集合set没有重复元素 , 集合没有键和值的配对 , 是一系列无序的、唯一的元素组合 。字典和集合的内部结构都是一张哈希表 , 字典存储了哈希值(hash)、键和值这 3 个元素 , 而集合的哈希表内没有键和值的配对 , 只有单一的元素 。和列表不一样 , 集合不支持索引操作 。
java 的HashSet()和TreeSet()
- set.add(value)
- set.delete(value)
- set.hash(value)
>>> setA = {'apple', 'banana'}# 或者 setA = set(["apple", "banana"])>>> setB = {'apple', 'banana', 'orange'}
并集>>> setA.union(setB)set(['orange', 'apple', 'banana'])>>> setA | setBset(['orange', 'apple', 'banana'])
交集>>> setA.intersection(setB)set(['apple', 'banana'])>>> setA & setBset(['apple', 'banana'])>>> >>> setB.intersection_update(setA)>>> setB{'banana', 'apple'}
isdisjoint() 方法可用于判断两个集合是否包含相同的元素 , 如果没有返回 True 。差集
推荐阅读
- 自己如何重装笔记本电脑操作系统呢? 笔记本操作系统
- 戴尔笔记本质量怎么样? 戴尔电脑怎么样
- 4000元左右笔记本电脑 4000左右的笔记本
- 上海笔记本维修电脑 本本维修
- AMD|显卡之后等等党又赢了 消息称4月份笔记本电脑大降价
- 电脑黑屏按哪三个键(笔记本黑屏后无法唤醒屏幕)
- 笔记本电脑和投影仪咋连 投影仪连接电脑
- 傅雷家书读书笔记20篇 傅雷家书 读后感
- 笔记本电池无法充电解决方法
- 为知笔记下载 为知笔记