首页 > 编程语言 > 详细

python学习-19 字典

时间:2019-06-29 17:04:54      阅读:124      评论:0      收藏:0      [点我收藏+]

字典dict

1.dic = {key:value,key:value}

字典有{ }括住,字典的value可以是任意值,字典的key的值不包括列表和字典

di = {"age":18,"name":"john","a":True,"b":[1,2,"movie"],"c":(1,2,"ff",)}
print(di)

运算结果:

{age: 18, name: john, a: True, b: [1, 2, movie], c: (1, 2, ff)}

Process finished with exit code 0

 

2.取值(只能通过索引的方式,不能用切片的方式。因为字典是无序的)

di = {"age":18,"name":"john","a":True,"b":[1,2,"movie"],"c":(1,2,"ff",)}
v = di["c"][0]
print(v)

运行结果:

1

Process finished with exit code 0

3.删除

di = {"age":18,"name":"john","a":True,"b":[1,2,"movie"],"c":(1,2,"ff",)}
del di["b"][2]
print(di)

运行结果:

{age: 18, name: john, a: True, b: [1, 2], c: (1, 2, ff)}

Process finished with exit code 0

4.循环(只能用for循环,不能用while,因为字典是无序的)

di = {"age":18,"name":"john","a":True,"b":[1,2,"movie"],"c":(1,2,"ff",)}
for k,v in di.items():
 print(k,v)

运行结果:

age 18
name john
a True
b [1, 2, movie]
c (1, 2, ff)

Process finished with exit code 0

 

5.方法

 

-根据序列创建字典并指定统一的值

a= dict.fromkeys(["age",123,"465"],222)
print(a)

运行结果:

{age: 222, 123: 222, 465: 222}

Process finished with exit code 0

 

-根据key取值,如果没有key,则为none

dic = {"a":1,"b":3}
v = dic.get("a")
print(v)

运行结果:

1

Process finished with exit code 0

 

-删除

dic = {"a":1,"b":3}
v = dic.pop("a")
print(v)
print(dic)

运行结果:

1
{b: 3}

Process finished with exit code 0

 

-随机删除

dic = {"a":1,"b":3}
v = dic.popitem()
print("删除的值为:",v)
print(dic)

运行结果:

删除的值为: (b, 3)
{a: 1}

Process finished with exit code 0

 

-设置,如果设置的值不存在,则创建新的,如果存在,不设置,直接获取当前的值

dic = {"a":1,"b":3}
v = dic.setdefault("c",132)
print(v)
print(dic)

运行结果:

132
{a: 1, b: 3, c: 132}

Process finished with exit code 0

 

 

-添加

 

第一种方法:

dic = {"a":1,"b":3}
v = dic.update({"c":"456"})
print(dic)

运行结果:

{a: 1, b: 3, c: 456}

Process finished with exit code 0

第二种方法:

dic = {"a":1,"b":3}
v = dic.update(c=123,d=456)
print(dic)

运行结果:

{a: 1, b: 3, c: 123, d: 456}

Process finished with exit code 0

 

python学习-19 字典

原文:https://www.cnblogs.com/liujinjing521/p/11107070.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!