dict字典

dict字典

字典的概述

• 概述:使⽤键-值(key-value)⽅式存储。

• key的特点: • 1、字典中的key必须是唯⼀的

• 2、key值必须是不可变的数据类型:字符串、元组、Number

• 3、list是可变的,不能作为key值使⽤

• 4、value:可以是任意类型的数据,可以重复。

• 本质:⼀种⽆序的集合。

注:字典是可变的数据

字典的创建

key:不可用可变数据类型(可用string,Number,bool,none(不推荐用))

value:python支持的数据类型均可

# 1、创建⼀个带有5个元素的字典
dic1 = {"Lily":98, "Tom":67, "Lucy":98, "Hmm":45, "Lilei":45}
print(dic1)
print(type(dic1)) # dict
# 2、创建⼀个空字典
dic2 = {}
print(dic2)
# 3、创建⼀个只有⼀个元素的字典
dic3 = {"a" : "abc"}
print(dic3)

字典的访问

两种value方式:

1.  字典名[key]    注:当key在字典中不存在,报错

2. 字典名.get(key)    注:当key不存在,返回none

# 1.获取value 方式一     字典名【key】
# 注:当key中不存在,报错
dict1 = {"a": 1, "b": 2, "c": 3}
print(dict1["a"])

# 2.获取value 方式二     dict1.get(key)
# 注: 当key中不存在,返回none
dict2 = {"a": 1, "b": 2, "c": 3}
print(dict2.get("a"))
print(dict2.get("adsd"))  # none

 判断元素是否存在字典中

利用  in    或者    not   in  返回值类型为bool

dict1={"a":21,"sd":121}
print("b" in list(dict1.keys()))        #True
print("b" not in list(dict1.keys()))    #False
print("b" in list(dict1.keys()))        #False
print("b" not in list(dict1.keys()))    #True

 字典的操作 

字典添加元素  字典名[新的key]=新的value

删除字典中指点key的元素  字典名称.pop(key值)

修改元素   字典名[key]=value

dict2 = {"a": 1, "b": 2, "c": 3}
print(dict2)
# 1 增 格式:字典名称[新的key]=新的value
dict2["as"] = 45
print(dict2)

# 2 删 格式:字典名称.pop(key值)
dict2.pop("a")
print(dict2)

# 3 改 格式:字典名称[key]=value
# key值被删除时,value值也会被删除
dict2["as"] = 66
print(dict2)

# 4查
print(dict2["b"])
print(dict2.get("b"))  

# 5其他
print(len(dict2))

 字典遍历

dict.keys()  返回字典中所有的key值

dict.values()   返回字典中所有的value值

dict.items()    返回字典中所有的key及value值的列表   每个元素为一个元组,元组第一个元素为key,第二个元素为value

# 1、遍历
for key in dict1:
    print(key, dict1[key])

# 2.dict.keys()  返回字典中所有的key值  (列表类型)
print(dict2.keys())
keylist = dict2.keys()
for key in keylist:
    print(key)
    print(dict2[key])

# 3.字典名.values()   返回字典中所有的value值  (列表类型)
print(dict2.values())
for value in dict2.values():
    print(value)

# 4.字典名.items() 返回字典中所有的key及value值(列表类型,列表类型)
# 中的元素为元组类型,元组的第一个元素为key,第二个为value
print(dict2.items())
for key, value in dict2.items():
    print(key, value)

# 5.字典模拟json
list = [{'appname': "1231", "price": 12, "datetime": "2019-12-2"}
    , {'appname': "ssds", "price": 13, "datetime": "2019-3-2"}]
for i in list:
    print(i["appname"])

 

 

 

原文地址:https://www.cnblogs.com/dyd520/p/11244445.html