字典dict
key-value键值对的数据集合
*可变的,无序的,Key不重复的
字典dict定义 初始化
d = dict() 或者 d = {}
dict(**kwargs) 使用 name=value对初始化一个字典
dict(mapping,**kwargs) 使用一个字典构建另一个字典
类方法dict.fromkeys(iterable,value)
d = dict.fromkeys(range(5))
d = dict.frokeymkeys(range(5),0)
字典元素访问
*d[key]
返回key对应的值value, key不存在抛出keyError异常
*get(key[,default]), 返回key对应的值value
key不存在返回缺省值,如果没有设置就返回None
*setdefault(key[,default])
返回key对应的值value
key不存在,添加kv对,value设置为default,并返回default,如果default没有设置,缺省值为none
字典增加和修改
d[key] = value
将key对应值修改为value
key不存在添加新的kv对
update([other]) >>>None
使用另一个字典的kv对更新本字典
key不存在,就添加
key存在,覆盖已存在的key对应的值
就地修改
字典删除
pop(key[,default])
key存在,移除它,并返回它的value
key不存在,返回给定的default
default未设置,key不存在则抛出keyError异常
popitem()
移除兵返回一个任意的键值对
字典为empty,抛出keyError异常
clear()
清空字典
字符串重复次数统计
import string import random num = string.ascii_lowercase n = ((''.join(random.choice(num) for i in range(2))) for i in range(10)) newdict = {} for i,x in enumerate(n): newdict[x] = newdict.get(x,0) + 1 sorted(newdict.items(),reverse=True)
数字重复统计
import random num = {} n = [] for i in range(1,10): n.append(random.randint(1,10)) for j in n: if not num.get(j): num[j] = 1 continue num[j] += 1 print(n,num) print(sorted(num.items()))