字典:字典是一系列键值对,是一种无序的数据集合,它是通过键来访问的,而不是索引
字典的特点:
1.键值对的存储:字典以键值对的形式存储,键和值之间用冒号分隔,键值对之间用逗号分隔。键可以是任意不可变的对象(如字符串、数字、元组),值可以是任意对象(如字符串、数字、列表、 字典等);
2.键的唯一性:字典的键是唯一的,而值可以重复;
3.无序性:字典中的元素是无序的,不像列表或元组有固定的顺序,所以不能通过索引来访问字典中的元素;
4.可变性:字典是可变的,可以通过添加、修改或删除键值对来改变字典的内容。
1.使用花括号 { } 进行创建
2.使用 dict() 函数进行创建
dict_1 = {1,}
print(type(dict_1))
dict_2 = {'key':1} #使用花括号 {} 进行创建
print(type(dict_2))
dict_3 = dict(a=1,b=2,c=3) #使用 dict() 函数进行创建
print(dict_3)
1.使用赋值操作符 = ,依次指定字典名、用方括号括起的键和相关联的值:
my_dict = {}
my_dict['key1'] = 'value1'
2.使用update()方法添加多个键值对:
my_dict = {}
my_dict.update({'key1': 'value1', 'key2': 'value2'})
如果指定的键已经存在于字典中,那么对应的值将被更新为新的值。如果键不存在,则新的键值对将被添加到字典中。
#示例
d = {'c':'3',}
d['a']=1
print(d)
d.update({'b':'2','c':'4'})
print(d)
1.使用 del 关键字删除指定键的键值对:
my_dict = {'key1': 'value1', 'key2': 'value2'}
del my_dict['key1']
2.使用 pop() 方法删除指定键,并返回该键对应的值:
my_dict = {'key1': 'value1', 'key2': 'value2'}
value = my_dict.pop('key1')
使用 del 关键字删除键值对时,如果指定的键不存在于字典中,会引发 KeyError 异常。而使用 pop() 方法删除键值对时,如果指定的键不存在于字典中,可以提供一个默认值作为参数,并在键不存在时返回该默认值。
#示例
d = dict(a=1,b=2,c=3)
print(d)
del d['a']
value = d.pop('b')
print(value)
value = d.pop('f',None) #指定的键不在字典中
print(value)
print(d)
del d['f']
print(d)
1.使用赋值操作符 = 修改指定键的值:
my_dict = {'key1': 'value1', 'key2': 'value2'}
my_dict['key1'] = 'new value'
2.使用 update() 方法修改多个键值对:
my_dict = {'key1': 'value1', 'key2': 'value2'}
my_dict.update({'key1': 'new value', 'key2': 'new value'})
#示例
d = dict(a=1,b=2,c=3)
print(d)
d['a']=2
d.update({'b':'3','c':'4'})
print(d)
1.通过键访问相应的值,如果指定的键不在字典中,将会引发KeyError异常
my_dict = {'key1': 'value1', 'key2': 'value2'}
print(my_dict['key1'] )
2.使用get()方法来访问元素,如果指定的键不在字典中,不会引发异常,而是返回一个默认值(如果提供了默认值)或者None
my_dict = {'key1': 'value1', 'key2': 'value2'}
print(my_dict.get('key1'))
#指定默认值
print(my_dict.get('key3', "Unknown"))
#示例
d = dict(a=1,b=2,c=3)
print(d)
print(d['a'])
print(d.get('b'))
print(d.get('d','unkown'))
1.遍历字典中的键
for key in my_dict:
print(key)
2.遍历字典中的值
for value in my_dict.values():
print(value)
3.遍历字典的中键值对
for key, value in my_dict.items():
print(key, value)
#示例
my_dict = {'name':'jingshu','age':22,'work':'student'}
#遍历字典时,会默认遍历所有的键
for key in my_dict: # for key in my_dict.keys():
print(key)
for value in my_dict.values():
print(value)
for k,v in my_dict.items():
print(key,value)
1.列表中嵌套字典
2.字典中嵌套列表
3.在字典中存储字典