python之组合数据类型-字典dict

字典

  • 字典的定义与特点
  • 操作字典
    • 创建字典
    • 字典的增删改查
      • 添加键值对
      • 删除键值对
      • 修改键值对
      • 访问元素
    • 遍历字典
  • 嵌套

字典的定义与特点

字典:字典是一系列键值对,是一种无序的数据集合,它是通过键来访问的,而不是索引
字典的特点:
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)

python之组合数据类型-字典dict_第1张图片

字典的增删改查

添加键值对

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)

python之组合数据类型-字典dict_第2张图片

删除键值对

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)

python之组合数据类型-字典dict_第3张图片

修改键值对

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)

python之组合数据类型-字典dict_第4张图片

访问元素

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'))

python之组合数据类型-字典dict_第5张图片

遍历字典

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)

python之组合数据类型-字典dict_第6张图片

嵌套

1.列表中嵌套字典

可以在列表中存储多个字典作为元素。每个字典都可以拥有不同的键值对,构成一个复杂的数据结构。
python之组合数据类型-字典dict_第7张图片

2.字典中嵌套列表

可以在字典中使用列表作为值,以实现存储多个值的需求。
python之组合数据类型-字典dict_第8张图片

3.在字典中存储字典

可以在字典中使用字典作为值,以构建更复杂的数据结构。
python之组合数据类型-字典dict_第9张图片

你可能感兴趣的:(Python,python,开发语言,学习,笔记)