python3-字典常用操作

        字典格式:d = {key1 : value1, key2 : value2 },由key-value形式的键-值对组成,且key必须是不可变的,如字符串、数字或元组。key是唯一的,如果重复出现多个key,那么最后一个相同key的值会替换前面的,即同个key只能出现一次。value可以是任何数据类型,字符、数字、元组、列表、字典等。

①读取字典值:根据字典key获取对应的value,d['key']

②修改字典值:根据字典key修改对应的value,d['key']=‘new_value’,如果已经存在的key,则修改原value,如果不存在的key,则新增。

③删除字典值:根据字典key删除对应的value,del d['key']

④清空字典元素:使用clear()方法清空字典,d.clear()

⑤删除字典:使用del删除字典,删除后该字典不存在,del d

d = {'name': 'Jerry', 'age': 28, 'hobby': 'singing'}
# 修改原有age的值
d['age'] = 18

# 新增一个sex字段
d['sex'] = 'male'

# 输出当前字典
print(d)

# 获取某个key的值
print(d['age'])

# 删除字典中的一个key-value
del d['sex']
print(d)

# 清空字典中所有元素
d.clear()
# 输出一个空字典,{}
print(d)

# 删除字典
del d
# 删除后,会报错,因为该字典已经被删除不存在了
print(d)

运行结果: 

函数与方法的差别
调用方式作用域
方法对象.方法名不释放空间
函数函数名()自动释放空间
字典常用函数和方法
函数/方法说明举例
clear()方法

清空字典内所有元素。

返回一个空字典。

d = {1: 'a', 2: 'b'}

d.clear() ==> {}

type()函数返回类型

d = {1: 'a', 2: 'b'}

print(type(d)) ==> <class 'dict'>

copy()方法复制

d = {1: 'a', 2: 'b'}

print(d) ==>  {1: 'a', 2: 'b'}

print(d.copy()) ==>  {1: 'a', 2: 'b'}

get()方法

获取指定key的值。

d.get(key, default),如果找不到对应的key则返回default指定的值。default非必填,默认为None。

d = {1: 'a', 2: 'b'}

print(d.get(1)) ==> a

print(d.get(3)) ==> None

print(d.get(3, 'Not exists')) ==> Not exists

setdefault()方法

设置默认值。

d.setdefault(key, default),如果字典中已经存在key,则不作修改。如果不存在key,则添加到字典中, default非必填,默认为None。指定了value则添加对应值。

d = {1: 'a', 2: 'b'}
d.setdefault(2, 'c')
d.setdefault(3)
d.setdefault(4, 'd')
print(d) ==> {1: 'a', 2: 'b', 3: None, 4: 'd'}
items()方法以列表返回可遍历的(key, value) 元组数组

d = {1: 'a', 2: 'b'}

print(d.items()) ==> dict_items([(1, 'a'), (2, 'b')])

keys()方法以列表返回所有的key

d = {1: 'a', 2: 'b'}

print(d.keys()) ==> dict_keys([1, 2])

values()方法以列表返回所有的value

d = {1: 'a', 2: 'b'}

print(d.values()) ==> dict_values(['a', 'b'])

len()函数返回字典元素(key-value)个数

d = {1: 'a', 2: 'b'}

print(len(d)) ==> 2

str()函数字典转为字符串格式

d = {1: 'a', 2: 'b'}

print(str(d)) ==> {1: 'a', 2: 'b'}

print(type(str(d))) ==> <class 'str'>

update()方法

更新字典元素。

d.update(d1),将d1中的元素添加到d中

d = {1: 'a', 2: 'b'}
d1 = {'a': 1, 'b': 2}
d.update(d1)
print(d) ==> {1: 'a', 2: 'b', 'a': 1, 'b': 2}

print(d1) ==> { 'a': 1, 'b': 2}

pop()方法

删除指定key的值,返回删除的value。

d.pop(key, default),如果找不到对应的key则返回default指定的值。default非必填,默认为None。

d = {1: 'a', 2: 'b'}
print(d.pop(1)) ==> a

print(d) ==> {2: 'b'}
print(d.pop(3, 'Not exists')) ==> Not exists 

popitem()方法删除最后一对键值,并返回被删除的键值对。d = {1: 'a', 2: 'b'}
print(d.popitem()) ==> (2, 'b')
print(d) ==> {1: 'a'}

字典常用取值操作:

d = {'name': 'Jerry', 'age': 28, 'hobby': 'singing'}
# 读取字典所有的key-value
for k, v in d.items():
    print(k + ':' + str(v))

# 判断key是否在该字典中存在
if 'name' in d:
    print('ok')

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值