一、字典定义
# { } 键值对 各个键值对之间用逗号隔开
# 1. 有数据的字典
dict1 = { 'name' : 'zmz' , 'age' : 20 , 'gender' : 'boy' }
print ( dict1)
# 2. 创建空字典
dict2 = { }
print ( dict2)
dict3 = dict ( )
print ( dict3)
二、字典插入
dict1 = { 'name' : 'zmz' , 'age' : 20 , 'gender' : 'boy' }
dict1[ 'name' ] = 'zmh' # 如果[ ] 中的键值在dict1中存在,则修改这个字典的该键值
print ( dict1)
dict1[ 'hobby' ] = 'play computer games' # 如果[ ] 中的键值在dict1中不存在,则在这个字典的末尾追加该键值
print ( dict1)
三、字典删除
dict1 = { 'name' : 'zmz' , 'age' : 20 , 'gender' : 'boy' }
# 1. del -- 删除某个k值( 键值) 或整个字典
del dict1[ 'name' ] # 删除某个k值( 键值)
print ( dict1)
# del dict1 # 删除整个字典
# print ( dict1) # 报错
# 2. clear -- 意为清空,,,此函数的调用方式和 del 不同
dict2 = { 'name' : 'zmz' , 'age' : 20 , 'gender' : 'boy' }
dict2. clear ( )
dict2. clear ( ) # 清空整个字典,不会删除这个字典
print ( dict2) # 不会报错
四、字典修改
dict1 = { 'name' : 'zmz' , 'age' : 20 , 'gender' : 'boy' }
dict1[ 'name' ] = 'kyc' # 如果[ ] 中的键值在dict1中存在,则修改这个字典的该键值
print ( dict1)
dict1[ 'hobby' ] = 'girls' # 如果[ ] 中的键值在dict1中不存在,则在这个字典的末尾追加该键值
print ( dict1)
s = 'sadfasd'
print ( s[ : 3 ] )
五、字典查找
dict1 = { 'name' : 'zmz' , 'age' : 20 , 'gender' : 'boy' }
# 1. 按 K 值查找
print ( dict1[ 'name' ] )
# print ( dict1[ 'hobby' ] ) # 原字典中不含此 K 值,会报错
# 2. get ( key, 默认值) -- 查找并返回key对应的value值默认值若不写,则默认为‘None’
print ( dict1. get ( 'age' ) ) # 20
print ( dict1. get ( 'hobby' ) ) # None
print ( dict1. get ( 'hobby' , '123' ) ) # 123
# 3. keys ( ) -- 查找字典中的所有 Key值,返回可迭代对象(即可用for 循环遍历的)
print ( dict1. keys ( ) ) # dict_keys ( [ 'name' , 'age' , 'gender' ] )
# 4. values ( ) -- 查找并返回字典中的所有 value值,也是可迭代对象
print ( dict1. values ( ) ) # dict_values ( [ 'zmz' , 20 , 'boy' ] )
# 5. items ( ) -- 查找并返回字典中的所有键值对,也是可迭代对象
print ( dict1. items ( ) ) # dict_items ( [ ( 'name' , 'zmz' ) , ( 'age' , 20 ) , ( 'gender' , 'boy' ) ] )
# 上面这个返回的数据是以元组为元素的列表
print ( type ( dict1. items ( ) ) ) # 这个返回类型是< class 'dict_items' > ,以上的可以类推
六、字典遍历
dict1 = { 'name' : 'zmz' , 'age' : 20 , 'gender' : 'boy' }
# 1. 遍历字典中的Key值
for key in dict1. keys ( ) :
print ( key)
# 2. 遍历字典的value值
for value in dict1. values ( ) :
print ( value)
# 3. 遍历字典中的元素(元组类型)
for item in dict1. items ( ) :
print ( item) # 此循环中item是元组类型
# print ( type ( item) )
# 4. 遍历字典中的键值对
for key, value in dict1. items ( ) :
print ( f'{key}={value}' ) # 这就是拆包
七、字典拆包
dict1 = { 'name' : 'zmz' , 'age' : '20' , 'gender' : 'boy' }
for key, value in dict1. items ( ) :
print ( f'{key}={value}' )