Python基础知识——字典:字典内置函数和方法:items;keys;value;clear;pop;popitem;upgate;get;setdefault;copy;fromkeys

字典的内置函数和方法

字典的常用内置函数和方法

dict_name.items() # 以列表的形式返回字典的键-值对的元组数组
dict_name.keys() # 以列表的形式返回字典所有的键
dict_name.values() # 以列表返回字典中的所有值
dict_name.clear() # 删除字典内所有元素
dict_name.pop(key) # 删除key并返回它的值
dict_name.popitem() # 返回并删除字典中的最后一对键和值
dict_name.update(dict2) # 把字典dict2的键/值对更新到dict里
dict_name.get(key, default) # 返回指定键key的值,如果值不在字典中返回default值
dict_name.setdefault(key, default) # 和get()类似, 但如果键key不已经存在于字典中,将会添加键并将值设为default
dict_name.copy() # 返回一个字典的浅复制(浅复制不懂什么意思,就跟print()一样,输入这个字典的key-value对的值)
dict.fromkeys(seq, val) # 创建一个新字典,以序列seq中元素做字典的键,val为字典所有键对应的初始值(可以为空)

dict_name.clear() # 删除字典内所有元素,括号里无参数

dict1={1:'a',2:'b',3:'c'}
dict2=dict1.clear
print(dict2)

输出结果:
<built-in method clear of dict object at 0x7f3fb0517750>

dict_name.pop(key) # 删除key并返回它的值,括号里只能条一个参数:key值

dict1={1:'a',2:'b',3:'c'}
dict2=dict1.pop(1)
print(dict1)
print(dict2)

输出结果:
{2: 'b', 3: 'c'}
a

dict_name.popitem() # 以元组结构返回字典中的最后一对键和值并将其在原字典中删除

dict1={1:'a',2:'b',3:'c'}
dict2=dict1.popitem()
print(dict1)
print(dict2)

输出结果
{1: 'a', 2: 'b'}
(3, 'c')

dict_name.update(dict2) # 把字典dict2的键/值对更新到dict里,并存放在前面。

dict1={1:'a',2:'b',3:'c'}
dict2={4:'d'}
dict3=dict2.update(dict1)
print(dict1)
print(dict2)
print(dict3)

输出结果
{1: 'a', 2: 'b', 3: 'c'}
{4: 'd', 1: 'a', 2: 'b', 3: 'c'}
None

dict_name.get(key, default) # 返回指定键key的值,如果值不在字典中返回default值

get()方法语法:

dict.get(key, default=None)
参数
key – 字典中要查找的键。
default – 如果指定键的值不存在时,返回该默认值。
返回值
返回指定键的值,如果键不在字典中返回默认值 None 或者设置的默认值。

dict1={1:'a',2:'b',3:'c'}
dict2=dict1.get(1,'d')
dict3=dict1.get(1)
dict4=dict1.get(4,'d')
print(dict1)
print(dict2)
print(dict3)
print(dict4)

输出结果:
{1: 'a', 2: 'b', 3: 'c'}
a
a
d

dict_name.setdefault(key, default) # 和get()类似, 但如果键key不已经存在于字典中,将会添加键并将值设为default

dict1={1:'a',2:'b',3:'c'}
dict2=dict1.setdefault(1,'d')
dict3=dict1.setdefault(1)
dict4=dict1.setdefault(4,'d')
print(dict1)
print(dict2)
print(dict3)
print(dict4)

输出结果
{1: 'a', 2: 'b', 3: 'c', 4: 'd'}
a
a
d

setdefault()方法构造value值为列表/字典的字典

构造value值为列表的字典
dic.setdefault(key,[]).append(value)

示例如下:

dic = {}
dic.setdefault('a',[]).append(1)
dic.setdefault('a',[]).append(2)
print(dic)

输出结果:
 {'a': [1, 2]}
构造value值为字典的字典
dic.setdefault(key,{})[value] =1

示例如下:

dic = {}
dic.setdefault('b',{})['f']=1
dic.setdefault('b',{})['h']=1
dic.setdefault('b',{})['g']=1
print(dic)

输出结果 {'b': {'f': 1, 'h': 1, 'g': 1}}
修改value中的列表值
student_dic = {'name':'张三', 'age': 10, 'hobby': ['唱歌', '跳舞']}
student_dic.get('hobby', []).append('打球') # get()方法
student_dic.setdefault('hobby', []).append('打球') # setdefault()方法
print(student_dic)

输出结果:
{'name': '张三', 'age': 10, 'hobby': ['唱歌', '跳舞', '打球']}

dict.fromkeys(seq, val) # 创建一个新字典,以序列seq中元素做字典的键,val为字典所有键对应的初始值(可以为空)

fromkeys()方法从序列键和值设置为value来创建一个新的字典。

语法

以下是fromkeys()方法的语法:

dict.fromkeys(seq,[value]))

参数

seq – 这是将用于字典的键准备的值的列表。

value – 这是可选的,如果提供的话则值将被设置为这个值

返回值

此方法返回列表。

例子

下面的例子显示fromkeys()方法的使用。

seq = ('name', 'age', 'sex')
dict1 = dict.fromkeys(seq)
print(dict1)
dict2 = dict.fromkeys(seq, [10])
print (dict2)
输出结果:
{'name': None, 'age': None, 'sex': None}
{'name': [10], 'age': [10], 'sex': [10]}
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值