老生常谈python字典用法

目录
  • 创建字典
  • 遍历
  • 访问
  • 修改
  • 删除
  • setdefault() 方法

创建字典

python 创建字典可以使用 dict 函数,或者使用花括号,用花括号的方式更为常见。

d = {
    "a": "Athens",
    "b": "Belgrade",
    "c": "Cairo"
}

或者:

d = dict(a="Athens", b="Belgrade", c="Cairo")

遍历

python 可以方便地遍历字典的 keys, values ,或者在遍历的时候获得 key 和 value。下面的代码演示了遍历的方式:

for item in d.items():
    print(item)

这种方式,每一个 item 是一个 tuple,包括 key 和 value。

('a', 'Athens')
('b', 'Belgrade')
('c', 'Cairo')

也可以在遍历的时候通过两个变量得到 key 和 value:

for k, v in d.items():
    print(k, v)

如果只关心 keys:

for k in d.keys():
    print(k)

如果只关心 values:

for v in d.values():
    print(v)

访问

使用 d[k] 的语法获得 key 为 k 的值,如果 key 不存在,抛出 KeyError。比如刚才的字典中 print(d["a"]) 得到 Athens,但如果是 d[“d”],因为并不存在 key 为 d 的项,所以抛出 KeyError:

d = dict(a="Athens", b="Belgrade", c="Cairo")
print(d["d"])

运行代码,抛出异常如下:

Traceback (most recent call last):
  File "d:/temporary/python dict demo/test.py", line 4, in <module>
    print(d["d"])
KeyError: 'd'

如果想避免抛出异常,有两个方法:方法一是使用 get() 方法,没有对应的 Key 返回 None:

d = dict(a="Athens", b="Belgrade", c="Cairo")
print(d.get("d"))

方法二是在使用前先通过 in 进行判断:

d = dict(a="Athens", b="Belgrade", c="Cairo")
if "a" in d:
    print(d["a"])

修改

最简单的方法,通过 d[key] = value 方法修改,如果 key 不存在,则新建一个字典项:

d["a"] = "Atlanta"

update() 方法可使用一个字典来更新已有的字典,如果被更新的字典中己包含对应的 key,那么原 value 会被覆盖;如果被更新的字典中不包含对应的 key,则该 key-value 对被添加进去。例如如下代码:

d = dict(a="Athens", b="Belgrade", c="Cairo")

d.update({
    "a": "Atlanta",
    "b": "Belgrade",
    "d": "Dehli"
})

print(d)

运行代码,a 被替换,b 保持不变,c 被保留,d 被增加:

{'a': 'Atlanta', 'b': 'Belgrade', 'c': 'Cairo', 'd': 'Dehli'}

删除

  • clear() 方法删除所有字典项
  • del 删除字典项,如果 key 不存在,抛出 KeyError
  • pop() 删除对应键值,如果 key 不存在,也抛出 KeyError,可以对不存在键的情况设置默认值

示例:

del d["a"]
print(d.pop("d", "none")) # 返回 none而不是KeyError

setdefault() 方法

setdefault() 方法在 key 已经存在的时候返回对应的值,如果 key 不存在,则根据第二个参数 (default)增加 key-value pair,比如:

d.setdefault("a", "Atlanta") # 因为a已经存在,返回Athens
d.setdefault("d", "Dehli")   # 因为d不存在,将d设为Dehli
  • dict 用法和知识点总结 3.7 版本后,dict 能保存 key 的位置,3.7之前 key 是无序的,关心 key 的位置可以使用 SortedDict 数据结构
  • pop() / get() / setdefault() 三个方法可以设置 default 值,避免 KeyError
  • 字典的 key 不可重复

到此这篇关于老生常谈python字典用法的文章就介绍到这了,更多相关python字典用法内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Python里字典的基本用法(包括嵌套字典)

    Python字典的基本用法 创建字典: myDict1 = { '薛之谦':'我叫薛之谦', '吴青峰':'我叫吴青峰', '李宇春':'我叫李宇春', '花花':'我叫花花', '赵雷':'我叫赵雷' } emptyDict = {} myDict2 = dict(薛之谦 = '我叫薛之谦',吴青峰 = '我叫吴青峰') myDict3 = dict((('薛之谦','我叫薛之谦'),('吴青峰','我叫吴青峰'))) print(myDict1 ,'\n', myDict2 ,'\n', m

  • Python 字典中的所有方法及用法

    字典是Python中唯一内建的映射类型.字典中没有特殊的顺序,但都是存储在一个特定的键(key)下面,键可以是数字,字符串,甚至是元组 字典的使用 在某些情况下,字典比列表更加适用: 1.表示一个游戏棋盘的状态,每个键都是由坐标值组成的元组 2.存储文件修改时间,用文件名作为键; 3.数字电话\地址薄 创建字典的五种方式 # 字典的创建方式 # 方式一 {key: value} dict1 = {'one': 1, 'two': 2, 'three': 3} print(dict1) # 方式二

  • python字典的setdefault的巧妙用法

    现在有一个员工字典,类似这样的结构 staff_dic = {"name":"灭霸", "age": 10000, "hobbies":["打响指", "扣脚"]} 假设我们要给员工添加爱好信息,但是我们不知道hobby这个键存不存在,我们通常的做法是分为三步: 1)从字典中取到hobbies对应的值,如果没有hobbies这个键,则设置这个值为空列表 2)对这个值进行更新操作 3)将更

  • python 字典和列表嵌套用法详解

    python中字典和列表的使用,在数据处理中应该是最常用的,这两个熟练后基本可以应付大部分场景了.不过网上的基础教程只告诉你列表.字典是什么,如何使用,很少做组合说明. 刚好工作中采集prometheus监控接口并做数据处理的时候,用了很多组合场景,列出几个做一些分享. 列表(List) 序列是Python中最基本的数据结构.序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推. 列表是最常用的Python数据类型,它可以作为一个方括号内的逗号分隔值出现

  • Python字典生成式、集合生成式、生成器用法实例分析

    本文实例讲述了Python字典生成式.集合生成式.生成器用法.分享给大家供大家参考,具体如下: 字典生成式: 跟列表生成式一样,字典生成式用来快速生成字典,不同的是,字典需要两个值 #d = {key: value for (key, value) in iterable} d1 = {'x': 1, 'y': 2, 'z': 3} d2 = {k: v for (k, v) in d1.items()} print(d2) 集合生成式: 集合生成式格式和列表生成式类似,不过用的是大括号: s1

  • Python中字典与恒等运算符的用法分析

    本文实例讲述了Python中字典与恒等运算符的用法.分享给大家供大家参考,具体如下: 字典 字典是可变数据类型,其中存储的是唯一键到值的映射. elements = {"hydrogen": 1, "helium": 2, "carbon": 6} 字典的键可以是任何不可变类型,例如整数或元组,而不仅仅是字符串.甚至每个键都不一定要是相同的类型! print(elements["helium"]) # 2 我们可以使用方括号并

  • 老生常谈python字典用法

    目录 创建字典 遍历 访问 修改 删除 setdefault() 方法 创建字典 python 创建字典可以使用 dict 函数,或者使用花括号,用花括号的方式更为常见. d = { "a": "Athens", "b": "Belgrade", "c": "Cairo" } 或者: d = dict(a="Athens", b="Belgrade"

  • python字典get()方法用法分析

    本文实例讲述了python字典get()方法用法.分享给大家供大家参考.具体分析如下: 如果我们需要获取字典值的话,我们有两种方法,一个是通过dict['key'],另外一个就是dict.get()方法. 这里给大家分享的就是字典的get()方法. 这里我们可以用字典做一个小游戏,假设用户在终端输入字符串:"1"或者是"2"或者是"3",返回对应的内容,如果是输入其他的,则返回"error" >>> info

  • Python字典简介以及用法详解

    #!/usr/bin/env python # -*- coding:utf-8 -*- """ 老规矩以下方法环境2.7.x,请3.x以上版本的朋友记得格式print(输出内容放入括号内) 字典的基本组成以及用法 dict = { key : value } dict[ key ] = value 首先来说说字典是由key键与value值一一对应来组成字典的基本结构 key键不能由list列表,dict字典等多元素命名, key是唯一属性又可以称一对一服务,key相同但只会

  • Python字典的基本用法实例分析【创建、增加、获取、修改、删除】

    本文实例讲述了Python字典的基本用法.分享给大家供大家参考,具体如下: 字典是一系列的键值对 . 每个键都与一个值相关联, 我们可以使用键来访问与之相关联的值. 与键相关联的值可以任何 Python 对象,比如数字. 字符串. 列表甚至是字典. 1 创建字典 我们举一个英文单词的例子来说明: dict = {'evaporation': '蒸发,发散: 消失: 汽化: 蒸发法', 'carpenter': '木工,木匠'} print('dict=' + str(dict)) 键和值之间用冒

  • Python字典循环添加一键多值的用法实例

    循环写入字典key.value.删除指定的键值对: 原文本'jp_url.txt'每行元素以逗号分隔: host_key,product_id,product_name,cont_start,cont_end ah2.zhangyue.com,100002,掌阅,bookId=,&startChapterId ih2.ireader.com,100002,掌阅,bid=,& www.ireader.com,100002,掌阅,&bid=,&cid m.zhangyue.co

  • Python 十个字典用法使用技巧归纳

    目录 1.dict.clear() 2.dict.copy() 3.dict.fromkeys() 4.dict.get() 5.dict.items() 6.dict.keys() 7.dict.pop() 8.dict.popitem() 9.dict.setdefault() 10.dict.update(dict1) 11.dict.values() 大家好,本期给大家带来Python字典11个方法的全面解析,希望对你有所帮助. 字典(Dictionary)是Python提供的一种常用的

  • python字典中get()函数的基本用法实例

    目录 前言 1.get()函数利用键来获取值 2.利用字典统计列表中元素出现次数 补充:和dict[key]的区别 总结 前言 以下内容均为个人笔记,仅供学习参考使用,因内容均为自己实践经验所得,个人水平有限,如有错误欢迎指正 注:编程语言为Python3 1.get()函数利用键来获取值 之前在学习python的时候,在获取值得时候常用的方法就是直接 print(dict[key]) 但这种方法中当字典中不存在该键时会返回KeyError类型错误,此时就可以用get()函数还利用键获取值 pr

随机推荐