概述
Python字典包含了以下内置方法:
功能:字典 clear() 函数用于删除字典内所有元素。
语法:dict.clear()
参数:无
返回值:没有任何返回值。
dict = {'Name': 'Zara', 'Age': 7}print ("字典长度 : %d" % len(dict)) #字典长度 : 2
dict.clear()print ("字典删除后长度 : %d" % len(dict)) #字典删除后长度 : 0
功能:字典 copy() 函数返回一个字典的浅复制。
语法:dict.copy()
参数:无
返回值:返回一个字典的浅复制
dict = {'Name': 'Zara', 'Age': 7}
dict2=dict.copy()print ("新复制的字典为 :",dict2) #输出:新复制的字典为 : {'Name': 'Zara', 'Age': 7}
直接赋值和 copy 的区别
dict = {'Name': 'Zara', 'Age': 7, 'num':[1,2,3]}
dict2=dict
dict3=dict.copy()#浅拷贝: 引用对象
print ("新复制的字典dict2为 :",dict2) #输出:新复制的字典dict2为 : {'Name': 'Zara', 'Age': 7, 'num':[1,2,3]}#浅拷贝:深拷贝父对象(一级目录),子对象(二级目录)不拷贝,还是引用
print ("新复制的字典dict3为 :",dict3) #输出:新复制的字典dict3为 : {'Name': 'Zara', 'Age': 7, 'num':[1,2,3]}
#修改数据
dict['Name'] = '张三'dict['num'].remove(2)print('修改数据后的字典dict为:',dict) #输出:修改数据后的字典dict为: {'Name': '张三', 'Age': 7, 'num': [1, 3]}
#输出结果
print('dict为:',dict) #输出:dict为: {'Name': '张三', 'Age': 7, 'num': [1, 3]}
print('dict2为',dict2) #输出:dict2为 {'Name': '张三', 'Age': 7, 'num': [1, 3]}
print('dict3为',dict3) #输出:dict3为 {'Name': 'Zara', 'Age': 7, 'num': [1, 3]}
说明:dict2 其实是 dict 的引用(别名),所以输出结果都是一致的,dict3 父对象进行了深拷贝,不会随dict 修改而修改,子对象是浅拷贝所以随 dict 的修改而修改。
功能:fromkeys() 函数用于创建一个新字典,以序列 seq 中元素做字典的键,value 为字典所有键对应的初始值。
语法:dict.fromkeys(seq[,value])
参数:
seq:字典键值列表。
value: 可选参数, 设置键序列(seq)对应的值,默认为 None。
返回值:返回一个新字典。
seq = ('name', 'age', 'sex')
dict=dict.fromkeys(seq)print("新的字典为 : %s" % str(dict)) #输出:新的字典为 : {'name': None, 'age': None, 'sex': None}
dict= dict.fromkeys(seq,10)print("新的字典为 : %s" % str(dict)) #输出:新的字典为 : {'name': 10, 'age': 10, 'sex': 10}
功能:get() 函数返回指定键的值。
语法:dict.get(key,default=None)
参数:
Key:字典中要查找的键。
default: 如果指定的键不存在时,返回该默认值。
返回值:返回指定键的值,如果键不在字典中返回默认值 None 或者指定的默认值。
dict={'name':'张三','age':13,'grade':7}
dict1= dict.get('name')print ("name 值为 : %s" % dict.get('name')) #输出:name 值为 : 张三
功能:字典 in 操作符用于判断键是否存在于字典中,如果键在字典 dict 里返回 true,否则返回 false。
而 not in 操作符刚好相反,如果键在字典 dict 里返回 false,否则返回 true。
语法:key in dict
参数:
Key:要在字典中查找的键。
返回值:如果键在字典里返回true,否则返回false。
dictName = {'name':'张三','age':13,'grade':7}#检测 name 是否存在
if 'name' indictName:print("键 name 存在 dictName 中")else:print("键 name 不存在 dictName 中")#检测 age 是否存在
if 'age' indictName:print("键 age 存在 dictName 中")else:print("键 age 不存在 dictName 中")#检测 grade 是否存在
if 'grade' not indictName:print("键 grade 不存在 dictName 中")else:print("键 grade 存在 dictName 中")#检测 Sex 是否存在
if 'sex' not indictName:print("键 sex 不存在 dictName 中")else:print("键 sex 存在 dictName 中")
输出:
键 name 存在 dictName 中
键 age 存在 dictName 中
键 grade 存在 dictName 中
键 sex 不存在 dictName 中
功能:items() 方法以列表返回可遍历的(键, 值) 元组数组。
语法:dict.items()
参数:无
返回值:返回可遍历的(键, 值) 元组数组。
dictName = {'name':'张三','age':13,'grade':7}print(dictName.items()) #输出:dict_items([('name', '张三'), ('age', 13), ('grade', 7)])
功能:字典 keys() 方法返回一个可迭代对象,可以使用 list() 来转换为列表。
语法:dict.keys()
参数:无
返回值:返回一个迭代器。
dictName = {'name':'张三','age':13,'grade':7}#获取字典中key值的迭代器
print("返回字典dictName中的key值:",dictName.keys()) #返回字典dictName中的key值: dict_keys(['name', 'age', 'grade'])
#将迭代器转为列表
print(list(dictName.keys())) #['name', 'age', 'grade']
功能: values() 方法返回一个迭代器,可以使用 list() 来转换为列表,列表为字典中的所有值。
语法:dict.values()
参数:无
返回值:返回迭代器。
dictName = {'name':'张三','age':13,'grade':7}#获取字典中 value 值的迭代器
print("返回字典dictName中的value值:",dictName.values()) #返回字典dictName中的value值: dict_values(['张三', 13, 7])
#将迭代器转为列表
print(list(dictName.values())) #['张三', 13, 7]
功能:setdefault() 方法和 get()方法 类似, 如果键不已经存在于字典中,将会添加键并将值设为默认值。
语法:dict.setdefault(key,default=None)
参数:
Key:查找的键值。
default: 键不存在时,设置的默认键值。
返回值:如果 key 在 字典中,返回对应的值。如果不在字典中,则插入 key 及设置的默认值 default,并返回 default ,default 默认值为 None。
dictName = {'name':'张三','age':13,'grade':7}print(dictName) #输出:{'name': '张三', 'age': 13, 'grade': 7}
print("age 键的值为 : %s" % dictName.setdefault('age', None)) #输出:age 键的值为 : 13
print("sex 键的值为 : %s" % dictName.setdefault('sex', '男')) #输出:sex 键的值为 : 男
print("新字典为:", dictName) #输出:新字典为: {'name': '张三', 'age': 13, 'grade': 7, 'sex': '男'}
功能:update()函数把字典参数 dict2 的 key/value(键/值) 对更新到字典 dict 里。
语法:dict.update(dict2)
参数:
dict:添加到指定字典dict里的字典。
返回值:没有任何返回值。
dictName = {'name':'张三','age':13,'grade':7}
dictName2= {'Sex': 'female'}
dictName.update(dictName2)print("更新字典 dictName",dictName)#更新字典 dictName {'name': '张三', 'age': 13, 'grade': 7, 'Sex': 'female'}
功能:pop() 方法删除字典给定键 key 所对应的值,返回值为被删除的值。key值必须给出。 否则,返回default值。
语法:dict.pop(key[,dafault])
参数:
key:要删除的键值。
default:如果没有 key,返回 default 值
返回值:返回被删除的值。
dictName = {'name':'张三','age':13,'grade':7}
Name= dictName.pop('name')print(Name) #输出:张三
print(dictName.pop('age')) #输出:13
功能:字典 popitem() 方法随机返回并删除字典中的最后一对键和值。
语法:dict.popiltem()
参数:无
返回值:返回一个键值对(key,value)形式,按照 LIFO(Last In First Out 后进先出法) 顺序规则,即最末尾的键值对。
dictName = {'name':'张三','age':13,'grade':7,'sex':'男'}print(dictName) #输出:{'name': '张三', 'age': 13, 'grade': 7, 'sex': '男'}
Name =dictName.popitem()print(Name) #输出:张三
print(dictName) #输出:{'name': '张三', 'age': 13, 'grade': 7}
最后
以上就是傻傻小土豆为你收集整理的python内置字典_python中字典的内置方法的全部内容,希望文章能够帮你解决python内置字典_python中字典的内置方法所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复