python 字典

1,dict  字典的含义

字典就是我们在其他原因中用到的key:value形式的一种表达形式,

2,字典的定义方法

简单地说字典就是用大括号包裹的键值对的集合。(键值对也被称作项)

一般形式:

A = dict(a=1, b=2)
A = {“name”: “a”}

A = dict([(“name”, “a”), (“age”, 18)])

如:

n={"name":"sixgod","age":18}

print(n)

结果为:{'name': 'sixgod', 'age': 18}

特点:
1、键与值用冒号“:”分开;
2、项与项用逗号“,”分开;
3、字典中的键必须是唯一的,而值可以不唯一。

3,字典的常用方法

(1)get(key,defaule=None) 返回指定键的值,如果值不在字典中返回默认值。

如:定义字典n,其中有key:name  age,查找key为name所对应的value。

n={"name":"sixgod","age":18}
print(n.get("name"))

结果为:sixgod

当查找的值不存在时,会返回默认值。

n={"name":"sixgod","age":18}
print(n.get("address"))
结果为:None

返回的值是可以自己定义的如:

n={"name":"sixgod","age":18}
print(n.get("address","没有"))
结果为:没有

(2)keys()获取所有的key

如:

n={"name":"sixgod","age":18}
print(n.keys())

结果为:dict_keys(['name', 'age'])

(3)values()获取所有的value

如:

n={"name":"sixgod","age":18}
print(n.values())
结果为:dict_values(['sixgod', 18])

(4)items() 以列表返回可遍历的(键, 值) 元组数组。

如:

n={"name":"sixgod","age":18}

print(n.items())

结果为:dict_items([('name', 'sixgod'), ('age', 18)])

# 此方法会将字典中的所有key:value都打印出来,在python2中,iteritems()方法是:取一次值,打印一个key:value

不会一次全打印出来,需要配合循环使用。如:

n={"name":"sixgod","age":18}
for i,j in n.iteritems():print(i,j)

(5) update() 语法:dict.update(dict2)   函数把字典dict2的键/值对更新到dict里。(可以理解为增加)

如:

n={"name":"sixgod","age":18}
m={"address":"china"}
n.update(m)
print(n)

结果为:{'name': 'sixgod', 'age': 18, 'address': 'china'}

(6)pop()  语法:pop(key[,default])    删除字典给定键 key 所对应的值,返回值为被删除的值。key值必须给出。 否则,返回default值。

如:定义一个字典n,删除key “name”,则返回name所对应的值:“sixgod”,可以看到此时字典n中已经没有name了。

n={"name":"sixgod","age":18}
print(n.pop("name"))
print(n)

结果为:sixgod
             {'age': 18}

(7)copy() 语法:dict2 = dict1.copy()   对字典进行深复制:dict2不会随着dict1的改变而改变。

另一种:dict2 = dict1 这种dict2 会跟着 dict1 发生改变。

如:(1:a,b 开始是相同的,当删除了a的key“a”后,b还是原来的样子。

a = {"a":1,"b":2,"c":3}
b = a.copy()
print(a,b)
a.pop("a")
print(a,b)

输出为:{'a': 1, 'b': 2, 'c': 3} {'a': 1, 'b': 2, 'c': 3}
                {'b': 2, 'c': 3}         {'a': 1, 'b': 2, 'c': 3}

(2:

a = {"a":1,"b":2,"c":3}
b = a
print(a,b)
a.pop("a")
print(a,b)

结果为:{'a': 1, 'b': 2, 'c': 3} {'a': 1, 'b': 2, 'c': 3}    

                {'b': 2, 'c': 3} {'b': 2, 'c': 3}






猜你喜欢

转载自blog.csdn.net/weixin_39318540/article/details/79775953
今日推荐