python字典用法

一:字典定义数据结构

Python内置了字典:dict的支持,dict全称dictionary,在其余语言中也称为map,字典是另 一种可变容器模型,且可存储任意类型对象。具备极快的查找速度。spa

字典是一种经过名字或者关键字引用的得数据结构,其键能够是数字、字符串、元组,这种结构类型也称之为映射。字典类型是Python中惟一內建的映射类型code

字典建立方式对象

方式一:
my_dict = dict(name='小明',age=18,性别='')  #注意键都不要加引号

方式二:
my_dict = {'name': '小明', 'age': 18, '性别': ''}  #注意字符串类型的键要加引号

方法三:
my_dict = dict(((1,'小明'),('age',18)))  

注意:
每一个键与值用冒号隔开(:),每对用逗号,每对用逗号分割,总体放在花括号中({})。
键必须独一无二,但值则没必要。
值能够取任何数据类型,但必须是不可变的,如字符串,数或元组。blog

 

二:字典的用法字符串

1.字典查询get

my_dict = {'name': '小明', 'age': 18, '性别': ''}
查询字典的键对应的值:
方法一:my_dict['name']  #若是键不存在报错KeyError
方法二:my_dict.get('name')  #若是键不存在返回None(也能够自定义返回值)

查询字典全部的键:
方法一:my_dict.keys() #返回dict_keys(['name', 'age', '性别'])
方法二:set(my_dict)  #返回集合{'性别', 'age', 'name'}

查询字典全部的值
my_dict.values()

查询字典全部的项
my_dict.items()

2.字典的新增和修改it

my_dict = {'name': '小明', 'age': 18, '性别': ''}
my_dict['班级'] = '3班'  #键不存在则新增键值
my_dict['age'] = 20    #键存在修改键对应的值

3.字典的删除io

my_dict = {'name': '小明', 'age': 18, '性别': ''}
del my_dict['age']  #删除键是age的项
my_dict.clear()  #清空字典的内容
del my_dict  #删除字典

 

三:字典经常使用内置方法class

1.fromkeys()  建立一个新字典,fromkeys(*args, **kwargs) 以*args中元素作字典的键,**kwargs为字典全部键对应的初始值

list_data = ['name', 'age', '性别']
d = dict.fromkeys(list_data)
结果:d为{'name': None, 'age': None, '性别': None}

list_data = ['name', 'age', '性别']
d = dict.fromkeys(list_data,'哈哈')
结果:d为 {'name': '哈哈', 'age': '哈哈', '性别': '哈哈'}

2.pop()方法删除指定的key,pop(self, k, d=None)  参数: k:待删除的key    d:若是待删除的key,则返回None ,或指定什么返回什么

my_dict = {'name': '小明', 'age': 18, '性别': ''}
p = my_dict.pop('name')  #若是键不存在时报错
print(p)  #小明
print(my_dict)   #{'age': 18, '性别': '男'}

p = my_dict.pop('年级','年级未知')  
print(p)   #年级未知

3.popitem()方法,随机删除一个键值对

my_dict = {'name': '小明', 'age': 18, '性别': ''}
p = my_dict.popitem()
print(p)  #('性别', '男')
print(my_dict)  #{'name': '小明', 'age': 18}
相关文章
相关标签/搜索