Python字典基本操作
1 字典创建
【Python字典基本操作】(1) 直接创建
mydict1={'a':[1,2,3,4],'b':'adsa'}In [1]:type(mydict1)
Out[1]: dict
(2)通过dict先建立空字典,再添加值
mydict2=dict()
mydict2['one']='sum'In [9]:mydict2
Out[9]: {'one': 'sum'}
(3) 通过列表创建字典
#方法1:通过zip函数(两个单独列表)
list1=list('abcde')
list2=list(range(6))
list1
Out[32]: ['a', 'b', 'c', 'd', 'e']
list2
Out[33]: [0, 1, 2, 3, 4, 5]
mydict4=dict(zip(list1,list2))
mydict4
Out[35]: {'a': 0, 'b': 1, 'c': 2, 'd': 3, 'e': 4}#方法2:嵌套列表
arr1=np.arange(0,10).reshape(5,2)
arr1
Out[42]:
array([[0, 1],
[2, 3],
[4, 5],
[6, 7],
[8, 9]])
mydict5=dict(arr1)
mydict5
Out[44]: {0: 1, 2: 3, 4: 5, 6: 7, 8: 9}#方法3:嵌套列表(使用for循环)
mydict6={}
for i in arr1:
mydict6[i[0]]=i[1]
mydict6
Out[55]: {0: 1, 2: 3, 4: 5, 6: 7, 8: 9}
2 字典索引及常用操作 (1)知道键名称,需要索引值。直接是用键名索引
In [10]:mydict1
Out[10]: {'a': [1, 2, 3, 4], 'b': 'adsa'}In [11]:mydict1['b']
Out[11]: 'adsa'
(2) 判断字典长度(键值对有多少对)
In [12]:len(mydict1)
Out[12]: 2
(3)判断键是否在字典中(只能判断键,不能判断值)
In [13]:'a' in mydict1
Out[13]: TrueIn [14]:'c' in mydict1
Out[14]: False
(4) 判断值是否在字典中
In [15]:vals=mydict1.values()In [16]:'adsa' in vals
Out[16]: True
(5) 通过值查找键
#方法1:通过对值位置的索引,找出键
In [22]:'list(mydict1.keys())[list(mydict1.values()).index('adsa')]
Out[22]: 'b'#方法2:先反转字典(交换键值关系),再通过索引找出键【当值存在列表等类型时,此方法不可行】
mydict3={v:k for k,v in mydict1.items()}
mydict3['adsa']
3 使用字典进行词频统计
#可以对单词,列表数据进行统计
#字典频率统计
def histcount(sth):
ct=dict()
for item in sth:
if item not in ct:
ct[item]=1
else:
ct[item]+=1
return ct
#使用get简化
def histct2(sth):
ct=dict()
for item in sth:
ct[item]=ct.get(item,0)+1
return ct
推荐阅读
- python学习之|python学习之 实现QQ自动发送消息
- 逻辑回归的理解与python示例
- python自定义封装带颜色的logging模块
- 【Leetcode/Python】001-Two|【Leetcode/Python】001-Two Sum
- Python基础|Python基础 - 练习1
- Python爬虫|Python爬虫 --- 1.4 正则表达式(re库)
- Python(pathlib模块)
- python青少年编程比赛_第十一届蓝桥杯大赛青少年创意编程组比赛细则
- Python数据分析(一)(Matplotlib使用)
- 编写字典程序