python中字典类型中的item是什么-python中 字典类型内置方法

python中 字典类型内置方法

一、字典(dict)

​ 1·、 存多个值,但是每一个值都有一个key与之对应。列如存在值有姓名:jiayi、年龄:18、身高:173

​ 2、定义方式

​ 在{}内用逗号分隔多个元素,每个元素都是key:value的形式,value可以是任意数据类型,key通常是字符串类型,但是key必须为不可变类型。

age = {"姓名":"王文彬","性别":"男","名族":"汉"} #直接定义一个列表

print(age)

print(type(age)) #

{"姓名": "王文彬", "性别": "男", "名族": "汉"}

二、内置方法

1.按key存取、修改值

dic ={"name":"jiayi","age":20,"height":173}

print(dic["name"]) #可取

dic["age"] = 18 #可指定key修改对应的值

print(dic)

jiayi

{"name": "jiayi", "age": 18, "height": 173}

2.长度(len)(有几组就输出数字几)

dic ={"name":"jiayi","age":20,"height":173}

print(len(dic))

3.成员运算符(in ot in)

dic ={"name":"wangwenbin","age":20,"height":173}

print("name"in dic)

print("age" not in dic)

4.for 循环

dic是无序的,但是python3采用了底层优化算法,所以看起来是有序的

dic ={"name":"wenbin","age":20,"height":173}

for i in dic.items(): #items是返回两个值(key和values)可以换成keys(),values()

print(i)

items是返回两个值(key和values)可以换成

所有方法后面都有() 所有的属性都是点出来的

5.删除:del /pop()/popitem

(1)del

dic ={"name":"jiayi","age":20,"height":173}

del dic["name"] #删除[key]所对应的key和value

print(dic)

print(dic.get("name")) #打印字典里key为name的值,用的方法是 .get。如果没有这个值返回值默认为"Nnne"

print(dic.get("name",2222)) #也可以指定输出,这里输出结果为222

{"age": 20, "height": 173}

None

2222

(2)pop()

dic ={"name":"jiayi","age":20,"height":173}

dic.pop("name") #指定元素删除

print(dic.pop("age")) #删除并且打印删除的这个元素

print(dic.get("age")) #在字典中取出 key为(age)的值。不在的话返回 None

print(dic)

20

None

{"height": 173}

(3)popitem

dic ={"name":"jiayi","age":20,"height":173}

print(dic.popitem()) #Python 字典 popitem() 方法返回并删除字典中的最后一对键和值。

print(dic)

("height", 173)

{"name": "jiayi", "age": 20}

6.键keys()、值values()、键值对items()

dic ={"name":"jiayi","age":20,"height":173}

print(dic.keys())

print(dic.values())

print(dic.items())

dict_keys(["name", "age", "height"])

dict_values(["jiayi", 20, 173])

dict_items([("name", "jiayi"), ("age", 20), ("height", 173)])

​ 需要掌握的

1.get() (指定取出字典里key对应的那个value.如果字典里没有的话返回为None)

dic ={"name":"jiayi","age":20,"height":173}

print(dic.get("name")) #如果有就返回真的值

print(dic)

print(dic.get("hobby"))

print(dic.get("hobby","nick")) #如果有就返回真的值,如果没有,默认返回None。也可以设置返回的值

jiayi

{"name": "jiayi", "age": 20, "height": 173}

None

nick

2.update() (字典 update() 函数把字典参数 dict2 的 key/value(键/值) 对更新到字典 dict 里。)

语法

dict.update(dict2)

dic ={"name":"jiayi","age":20,"height":173}

dic2 = {"hobby":"run"}

dic.update(dic2)

print(dic)

{"name": "jiayi", "age": 20, "height": 173, "hobby": "run"}

3.fromkeys() ( fromkeys() 函数用于创建一个新字典,以序列 seq 中元素做字典的键,value 为字典所有键对应的初始值。)

语法

dict.fromkeys(seq[, value])

dic=dict.fromkeys(["name","age","height"],None)

#fromkeys由dict,key来自于容器,值来自于后面定义的value

print(f"dic:{dic}")

{"name": None, "age": None, "height": None}

4.setdefault() (setdefault() 方法和 get()方法 类似, 如果键不已经存在于字典中,将会添加键并将值设为默认值。也就是会把不在的这个给添加上)

语法

dict.setdefault(key, default=None)

# 有指定key不会改变值;无指定key则改变值

dic ={"name":"jiayi","age":20,"height":173}

print(dic.setdefault("name"))

print(dic)

print(dic.setdefault("hobby","run"))

print(dic)

jiayi

{"name": "jiayi", "age": 20, "height": 173}

run

{"name": "jiayi", "age": 20, "height": 173, "hobby": "run"}

三、有一个值还是多个值

多个值

四、有序(索引)or无序(索引)

无序

五、可变or不可变

可变

dic ={"name":"jiayi","age":20,"height":173}

print(id(dic))

dic["name"] = "yanjiayi"

print(id(dic))

-------------------------------------------------------------

2213073478280

d2213073478280