学习课程名称:python全能工程师2022版
章节名称:5-1字典popitem 6-1所有数据类型与布尔值的关系
讲师姓名:deweizhang
课程内容概述:本节课学习了popitem函数的功能和用法,popitem函数的功能是删除当前字典里末尾的一组键值对并将其返回,popitem的用法是dict.popitem(),返回被删除的键值对,用元组包裹,0索引是key,索引是value,但要注意的是如果字典为空,则直接报错.字典popitem方法是删除当前字典里末尾一组键值并将其返回,返回一个键值对(key,value)形式,正确的用法dict_1.popitem(),同时还学习了所有数据类型与布尔值的关系
字典添加修改数据的方法:
[]处理法:
注意事项:字典没有索引
dict['name'] = 'dewei'
添加或修改,根据key是否存在所决定
update的功能与用法:
添加新的字典,如新字典中有和原字典相同的可以,则该key的value会被新字典的value覆盖
#coding:utf-8 user = {'name': 'dewei', 'age': 33} user['top'] = 1.75 print(user) user['name'] = 'xiaomu' user['age'] = 10 user['top'] = 1.75 print(user)
updae的功能与用法:
用法:
dict.update(new_dict)
user = {'name': 'dewei', 'age': 33} user_xiaomu = {'name': 'xiaomu', 'age': 10, 'sex': '男', 'top': 1.75} user.update(user_xiaomu) print(user)
setdefault的用法:
用法:
dict.setdefault(key, value)
参数:
key需要获取的key
value:如果key不存在,对应这个key存入字典的默认值
注意事项:
字典中的每一个key一定是唯一的
字典中的数据量没有限制
字典中的value可以是python中的任意数据类型和自定义对象
user = {'name': 'dewei', 'age': 33} value = user.setdefault('name', 'xiaoyun') print(value)
keys函数:
功能:
获取当前字典中所有的键(key)
用法:
dict.keys()- >无需传参,返回一个key集合的伪列表
values:
功能:获取当前字典中所有简直对中的值(value)
values的用法:
dict.values()->无需传参,返回一个key集合的伪列表
字典删除:
clear函数:
功能:晴空当前字典中的所有数据
用法:dict.clear()->无参数,无返回值
字典的clear()方法是清空字典中所有的数据,字典被清空后是空字典{},clear()方法返回None
pop函数:
功能:删除字典中之地昂的可以,并将其结果返回,如果可以不存在则报错
用法:dict.pop(key)--key希望被删除掉的键>>返回key对应的值(value)
del函数在字典中的应用
del dict[item] ->删除字典中的某个键
del dict ->删除整个字典
#coding:utf-8 projects = { 'ipad':{'name':'ipad', 'price':'2200', 'desc':'平板电脑'}, 'iphone':{'name':'iphone', 'price':'3000', 'desc':'智能手机'}, 'pc':{'name':'pc', 'price':'5000', 'desc':'台式电脑'}, 'mac':{'name':'mac', 'price':'8000', 'desc':'平板电脑'}, } print(project.keys()) print('一个中学生购买了{},价格是'.format(projects['pc']['name'], projects['pc']['price'])) projects.pop(pc) print(projects) print(project.keys()) result = projects.pop('mac') print('一个程序员购买了{}, 它的价格是{}'.forma(result['name'], result.get('price'))) print(projects.keys()) print('{} 和 {}都被卖出了, 他们一共花费了{}元'.format( projects['ipad']['name'], projects['iphone']['name'], projects['ipad']['price']+projects['iphone']['price'] )) projects.clear() print(prinject.keys())
字典的复制函数:
copy的功能:将当前字典复制一个新的字典
copy用法:dict.copy()->该函数无参数,返回一个一摸一样的内存地址不同的字典
#coding:utf-8 friuts = { 'apple': 30, 'banana': 50, 'pear': 100 } real_friuts = friuts.copy() print(real_friuts) real_friuts['orange'] = 50 real_friuts.update({'cherry': 100}) print(real_friuts) print(friuts) real_friuts['apple'] = real_friuts['apple'] - 5 print(real_friuts) real_friuts['pear'] -= 3 print(real_friuts) real_friuts.clear() print(real_friuts) real_friuts = friuts.copy() print('第二天的货:', real_friuts)
字典的成员运算符:
注意:在使用dict.get(key)的情况下,若需要返回bool值,则应该调用bool函数,用法bool(dict.get(key))去判断返回值,若value存在则返回为True,若value为None或者空字符串则返回False
in与not in在字典中的用法:应用在list,tuple,str,在字典dict中只能用来判断key是否存在
工作中有限是有成员运算符
字典内置的get也可以参与一下:通过value值进行判断的
#coding:utf-8 default_dict = {'a': None, 'b': 1, 'c':0, 'd': ''} print('a' in default_dict) print(bool(default_dict['a'])) print(bool(default_dict.get('a'))) print(bool(default_dict.get('b'))) print ('f' in default_dict) print ('f' not in default_dict) """ 字典中的成员判断 in 和not in用于判断键是否存在于字典中,如果键在字典里返回 True,否则返回 False,而get判断值的结果,如果value是None就会返回False """
字典中的popitem:
功能:删除当前字典末尾一组并将其返回
用法:dict.pop(item)--无需传参-->>返回被删除的键值对,永远组包裹0索引是key,1索引是value
注意事项:
若字典为空则直接报错
所有数据类型与布尔值的关系:
数据类型与布尔值的关系;
每一种数据类型,自身都有表示True与False
not对于一切结果取反