#python的基本语法网上已经有很多详细的解释了,写在这里方便自己记忆一些
字典是一种映射类型的数据结构,(映射一般是数学中的术语,指两个元素之间元素相互对应的关系)。字典和序列有很大的不同,序列类型是通过数组的形式来存储数据,并通过索引的方式来获取数据的值,索引值与对应位置存储的数据是没有关系的。但是字典是通过元素和元素的对应关系来获得元素的值的。
注意:字典的键必须独一无二,但是值可以取任何数据类型,列表,元组,字符串,数、
1、创建元组有五种方式
1、a = {‘a‘:1,‘b‘:2} 2、b = dict(a=1,b=2) 3、c = dict([(‘a‘,1),(‘b‘,2)]) d1 = (1,2) d2 = [‘a‘,‘b‘] 4、d = dict(zip(d2,d1)) #zip方法将两个可迭代序列成对输出,和它相似用法的有enumerate(),将单个可迭代序列按照索引值输出 5、e = dict({‘a‘:1,‘b‘:2}) print(a==b==c==d==e) True
2、字典具有许多内置方法,有几种常见的方法需要掌握
#fromkeys(),fromkeys方法有两个参数,第一个为可迭代序列,其中放入字典的键,第二个为字典的值,序列可以存放多个值,但是键只有一个,如果不写第二个参数不写, 则默认值为None#fromkeys()并不对原字典改变,而是返回一个新的字典,可以看到,a字典仍然为空,而b字典则有值a = {} b = a.fromkeys([1,2,3],‘what‘) print(a) print(b)
{}
{1: ‘what‘, 2: ‘what‘, 3: ‘what‘}
#keys(),values(),items()分别是返回字典的键,值,项(项是由键和值构成的一对元素,即键值对)for item in zip(b.keys(),b.values(),b.items()): print(item) (1, ‘what‘, (1, ‘what‘)) (2, ‘what‘, (2, ‘what‘)) (3, ‘what‘, (3, ‘what‘))
#get(),同样有两个参数,第一个为字典的键,第二个是如果在字典中不存在所要查询的键需要返回的值,如果不填则默认返回Noneprint(b.get(1)) print(b.get(4,‘找不到呢‘)) what找不到呢
#copy()方法用来复制字典,这和把字典直接付给一个变量不同,前者是将字典的内容在新的内存地址里面复制,后者是把新变量直接指向原地址a = {1:‘a‘,2:‘b‘,3:‘c‘} b = a.copy() print(id(a),id(b)) 2803652135528 2803652136176
还有几种如pop(),根据给定键弹出值,popitem(),随机弹出一个项,update(),用来更新字典(这与直接把字典的某个键赋值功能相同)
原文地址:https://www.cnblogs.com/chenprice/p/10128084.html
时间: 2024-10-30 03:30:00