#字典表达
# 字典名={}或者字典名=dict()
# 字典名={key:value,key:value}
# key不可以重复,否则只会保留第一个;
# value值可以重复;
# key可以是任意的数据类型,但不能出现可变的数据类型,保证key唯一;
# key一般形式为字符串。
#创建字典 空
s={}
print(s)
d=dict()
print(d)
#创建非空字典
d={“s”:“s1”}
print(d)
d1=dict(((“s”,“c”),))
print(d1)
字典用法
dict_1={‘name’:‘xiaoyu’} #普通字典
dict_2=dict([(‘name’,‘xiaoyu’)]) #序列转字典
dict_3=dict({‘name’:‘xiaoyu’}) #使用字典
dict_5={‘name’:‘xiaoyu’,‘age’:[12,23]} #混合字典
dict_4={}
print(dict_1)
print(dict_2)
print(dict_3)
print(dict_4)
print(dict_5)
#获取字典的值 value
dict_6={‘name’:‘xiaoyu’,‘age’:[12,23]}
#第一种方式:
a=dict_6[‘name’]
print(“获取得值:”+a)
#第二种方式:获取这种数据的方式
b=dict_6[‘age’][0]
print(b)
#修改字典
dict_6={‘name’:‘xiaoyu’,‘age’:[12,23],‘home’:‘好好争口气稍微努力一下吧’}
dict_6[‘home’]=‘haode’
print(dict_6)
#添加键值对
dict_6={‘name’:‘xiaoyu’,‘age’:[12,23],‘home’:‘好好争口气稍微努力一下吧’}
dict_6[“tianjia”]=“添加成功”
print(dict_6)
#clear 清除 从字典中删除所有数据
dict_6={‘name’:‘xiaoyu’,‘age’:[12,23],‘home’:‘好好争口气稍微努力一下吧’}
dict_6.clear()
print(dict_6)
#copy 复制 返回字典副本
#get 获取值 如果不存在返回none
dict_6={‘name’:‘xiaoyu’,‘age’:[12,23],‘home’:‘好好争口气稍微努力一下吧’}
print(dict_6.get(“name”))
print(dict_6.get(“hao”))
#获取不到值时,就返回空列表
#pop删除指定得键,并返回相应得值,如果未找到键,则返回默认值(如果给定),否则会引发错误
dict_6={‘name’:‘xiaoyu’,‘age’:[12,23],‘home’:‘好好争口气稍微努力一下吧’}
dict_6.pop(“name”)
dict_6.pop(“delete”,“未找到”)
print(dict_6)
#删除任意项popitem 删除并返回项目任意项,如果字段为空,则返回错误提示
dict_6={‘name’:‘xiaoyu’,‘age’:[12,23],‘home’:‘好好争口气稍微努力一下吧’}
print(dict_6.popitem())
#遍历items键 元组 使用items会返回一个列表,键值对使用集合来存放
dict_9={‘name’:‘xiaoyu’,‘age’:‘[23,23,34]’,‘home’:‘shencjaode’}
print(dict_9.items())
#列表遍历出来显示
for i in dict_9.items():
print(i)
#也可以直接打印出来键值对的方式
for key,value in dict_9.items():
print(f"keys:{key}“,f"value:{value}”)
#返回指定键,如果指定键的值不在字典中,返回none
dict_6={‘name’:‘xiaoyu’,‘age’:[12,23],‘home’:‘好好争口气稍微努力一下吧’}
print(dict_6.setdefault(“name”))
print(dict_6.setdefault(“nam”))
#更新update 覆盖现有的值 更新建值
dict_6={‘name’:‘xiaoyu’,‘age’:[12,23],‘home’:‘好好争口气稍微努力一下吧’}
dict_6.update({“name”:“duide”,“dui”:“h”})
print(dict_6)
# 返回所有的keys
dict_6 = {‘name’: ‘xiaoyu’, ‘age’: [12,23]}
for keys in dict_6:
print(keys)
# 以列表形式返回字典中的所有值
for valus in dict_6.values():
print(valus)
#zip 创建字典
dict_01={“name”,“age”,“sex”}
dict_02={“xiaoyu”,“2”,“女”}
print(dict(zip(dict_01,dict_02)))
#del 删除键值对
dict_91={‘name’:‘xiaoyu’,‘age’:[23,45]}
del dict_91[‘age’]
print(dict_91)
#去重复值
dict_6={‘name’:‘xiaoyu’,‘age’:[12,23],‘agexxx’:‘xiaoyu’}
for values in set(dict_6.values()):
print(values)
#合并字典
dict_1 = {“name”:“清安”, “age”:18, “sex”: “男”}
dict_2 = {“name”:“拾贰”, “age”:18, “sex”: “男”, “home”: “深圳”}
res = (dict_1|dict_2)
print(res)