python字典及基础操作

Posted 曹操贪慕小乔

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python字典及基础操作相关的知识,希望对你有一定的参考价值。

  1) 字典是没有顺序的,是任意对象的无序集合。

   2) 字典的键是唯一的,不能多次出现,多次出现时取最后一个值。

   3) 键是不可变的。

   4) 字典中的元素可增删。

   5) 因为没有顺序,所以不存在索引。

    1. 字典元素的访问    

>>> my_dict = 1001:'李华',1002:'张三',1003:'小雪',1004:'小张',1005:'小明'
>>> my_dict[1001]#访问键为1001的值
'李华'
>>> my_dict[1005]#访问键为1005的值
'小明'
>>> my_dict[1006]#访问键为1006的值,此时字典里没有1006,故报错。
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
KeyError: 1006

    2. 判断字典中的值是否存在 in  not in

>>> my_dict = 1001:'李华',1002:'张三',1003:'小雪',1004:'小张',1005:'小明'
>>> if 1001 in my_dict:#如果my_dict中存在1001这个键就执行下面语句
       print(my_dict[1001])
>>> 李华
>>> my_dict = 1001:'李华',1002:'张三',1003:'小雪',1004:'小张',1005:'小明'
>>> if 1006 not in my_dict:#如果my_dict中吧存在1006这个键就执行下语句
       print('不存在1006这个键')
>>> 不存在1006这个键

3. 添加元素

my_dict[‘newkey’] = ‘newvalue’
>>> my_dict = 1001:'李华',1002:'张三',1003:'小雪',1004:'小张',1005:'小明'
>>> my_dict [1006] = '小李'#增加键1006,对应值‘小李’
>>> my_dict1001: '李华', 1002: '张三', 1003: '小雪', 1004: '小张', 1005: '小明', 1006
: '小李'

4. 删除元素

del my_list[’key’]

>>> my_dict1001: '李华', 1002: '张三', 1003: '小雪', 1004: '小张', 1005: '小明', 1006
: '小李'
>>> del my_dict[1001]#删除键为1001的一组元素
>>> del my_dict[1002]#删除键为1002的一组元素
>>> my_dict1003: '小雪', 1004: '小张', 1005: '小明', 1006: '小李'

    5. 修改元素

my_dict[‘key’] = ‘newvalue’
>>> my_dict
1003: '小雪', 1004: '小张', 1005: '小明', 1006: '小李'
>>> my_dict[1003] = '小天'#把键1003的值修改为‘小天’
>>> my_dict
1003: '小天', 1004: '小张', 1005: '小明', 1006: '小李'

  6. clear()方法

        使用clear()方法会清空字典中的所有元素。

my_dict.clear()
>>> my_dict1003: '小天', 1004: '小张', 1005: '小明', 1006: '小李'
>>> my_dict.clear()#使用clear()方法进行清空操作
>>> my_dict

  7. get()方法

我们在获取键对应的值的时候,使用get()方法可以避免因未找到相应目标而引发异常的情况。

my.dict.get(key,default)

>>> my_dict = 1001:'小张',1002:'小华'
>>> my_dict.get(1001)#找到key1001对应值
'小张'
>>> my_dict.get(1002)#找到key1002对应值
'小华'
>>> my_dict.get(1003,'not found')#找到key1003对应值,如果找不到就输出'not found'
'not found'

  8. items()方法

        items方法返回字典中成对的键和值,返回的是一种名叫字典视图的特殊序列,其中每个元素都是一个元组。        items方法访问的是整组整组的元素,我们在循环操作的时候会进一步使用这种方法。

my_dict.items()

>>> my_dict
1001: '小张', 1002: '小华'
>>> my_dict.items()
dict_items([(1001, '小张'), (1002, '小华')])

  9. keys()方法

        它的使用方式和items使用方法类似,keys返回字典中的键。

my_dict.keys()

>>> my_dict
1001: '小张', 1002: '小华'
>>> my_dict.keys()
dict_keys([1001, 1002])

 10. values()方法

        vlaues()返回字典中的所有值。

>>> my_dict
1001: '小张', 1002: '小华'
>>> my_dict.values()
dict_values(['小张', '小华'])

 11. pop()方法

        pop()方法会删除指定的键,并返回其值,如果没有找到相应键可输出默认值。

>>> my_dict = 1001:'小华',1002:'小张',1003:'小美'
>>> my_dict.pop(1001)#删除键为1001的这一项
'小华'
>>> my_dict#此时字典里已经没有键为1001这一项
1002: '小张', 1003: '小美'
>>> my_dict.pop(1004,'no found')#删除键为1004这一项,如果找不到返回'no found'
'no found'

12、遍历字典

Python字典的for循环遍历

1)遍历key的值

scores_dict = '语文': 105, '数学': 140, '英语': 120
for key in scores_dict:
print(key)

语文
数学
英语

2)遍历value的值

scores_dict = '语文': 105, '数学': 140, '英语': 120
for value in scores_dict.values():
    print(value)

105
140
120

3) 遍历字典键值对

scores_dict = '语文': 105, '数学': 140, '英语': 120
for key in scores_dict:
print(key + ":" + str(scores_dict[key]))    # 返回字符串
scores_dict = '语文': 105, '数学': 140, '英语': 120
for i in scores_dict.items():
print(i)    # 返回元组

以上是关于python字典及基础操作的主要内容,如果未能解决你的问题,请参考以下文章

python字典及基础操作

python开发基础:字典操作

python的列表,元祖及字典

Python自动化开发-day01-Python开发基础2-元组字典文件操作

Python基础之元组及字典

python自动化--语言基础--数据类型及类型转换