廖雪峰py笔记5之dict

dict,字典

dict全称dictionary,在其他语言中也称为map,使用键-值(key-value)存储,具有极快的查找速度。

这种key-value存储方式,在放进去的时候,必须根据key算出value的存放位置,这样,取的时候才能根据key直接拿到value

 d = {‘Michael‘: 95, ‘Bob‘: 75, ‘Tracy‘: 85}
>>> d[‘Michael‘]
95注意观察括号,与查找方法。语法要看懂,上面这段代码给dict放入数据是是初始化指定放入的。

把数据放入dict的方法,除了初始化时指定外,还可以通过key放入:

>>> d[‘Adam‘] = 67
>>> d[‘Adam‘]
67

由于一个key只能对应一个value,所以,多次对一个key放入value,后面的值会把前面的值冲掉:

>>> d[‘Jack‘] = 90
>>> d[‘Jack‘]
90
>>> d[‘Jack‘] = 88
>>> d[‘Jack‘]
88
如果key不存在,dict就会报错:

要避免key不存在的错误,有两种办法,一是通过in判断key是否存在:

>>> ‘Thomas‘ in d
False

二是通过dict提供的get方法,如果key不存在,可以返回None,或者自己指定的value:

>>> d.get(‘Thomas‘)
>>> d.get(‘Thomas‘, -1)
-1

要删除一个key,用pop(key)方法,对应的value也会从dict中删除:

>>> d.pop(‘Bob‘)
75
>>> d
{‘Michael‘: 95, ‘Tracy‘: 85}

和list比较,dict有以下几个特点:

  1. 查找和插入的速度极快,不会随着key的增加而变慢;
  2. 需要占用大量的内存,内存浪费多。

而list相反:

  1. 查找和插入的时间随着元素的增加而增加;
  2. 占用空间小,浪费内存很少。

字典:d[‘hello‘] = ‘你好‘

列表:alist[0]=‘hello‘

list的下标只能是数字 而且是连续的 

字典的key可以是任意常量

下标指的是方括号里面的内容

字典在用key给值的时候用的是【】,而只有在定义的时候用{}

 列表只能通过append之列的函数往里面添加元素

字典可以通过 [key]模式添加



时间: 2024-10-10 13:13:36

廖雪峰py笔记5之dict的相关文章

廖雪峰py笔记4,循环。

for...in循环 sum = 0 for x in [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]: sum = sum + x print(sum) 这段代码的意思是,提取x从in后面的列表里,一个一个提取,直达全部提取完. range函数,生成一个随机数表,语法是range(x,y,z),其中x是开始的数,z是结束的数,y是步长.注意:前闭后开,比如range(0,100)实际上是从0到99,是不包括100的,默认步长是1 list(range(5)) [0, 1, 2,

廖雪峰py笔记5之set

set和dict类似,也是一组key的集合,但不存储value >>> s = set([1, 2, 3]) >>> s {1, 2, 3} 注意,传入的参数[1, 2, 3]是一个list,而显示的{1, 2, 3}只是告诉你这个set内部有1,2,3这3个元素,显示的顺序也不表示set是有序的.. 重复元素在set中自动被过滤: >>> s = set([1, 1, 2, 2, 3, 3]) >>> s {1, 2, 3} 通过a

python3 基础 廖雪峰教程笔记-4

https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/0014318447437605e90206e261744c08630a836851f51830001.模块 为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里. 在Python中一个.py文件就称为一个模块 模块的好处: 1.大大提高代码的可维护性 2.一个模块编写完毕,可以被其他模块引用 3.使用模块还可以避免函数

python3 基础 廖雪峰教程笔记-2 函数

https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/00143167832686474803d3d2b7d4d6499cfd093dc47efcd0001.函数 Python内置了很多有用的函数,我们可以直接调用. 要调用一个函数,需要知道函数的名称和参数 https://docs.python.org/3/library/functions.html Built-in Funct

python3 基础 廖雪峰教程笔记-3

https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/0014317568446245b3e1c8837414168bcd2d485e553779e000 在Python中,代码不是越多越好,而是越少越好.代码不是越复杂越好,而是越简单越好. 基于这一思想,我们来介绍Python中非常有用的高级特性,1行代码能实现的功能, 决不写5行代码.请始终牢记,代码越少,开发效率越高.高级特性

廖雪峰教程笔记:js中map和reduce的用法

举例说明,比如我们有一个函数f(x)=x2,要把这个函数作用在一个数组[1, 2, 3, 4, 5, 6, 7, 8, 9]上,就可以用map实现如下: 由于map()方法定义在JavaScript的Array中,我们调用Array的map()方法,传入我们自己的函数,就得到了一个新的Array作为结果: function pow(x) { return x * x; } var arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]; arr.map(pow); // [1, 4,

廖雪峰Python笔记

△命令行模式和Python交互模式 在Windows开始菜单选择"命令提示符",就进入到命令行模式,它的提示符类似C:\>:在命令行模式下敲命令python,就看到类似如下的一堆文本输出,然后就进入到Python交互模式,它的提示符是>>>.在Python交互模式下输入exit()并回车,就退出了Python交互模式,并回到命令行模式. △Python文件名只能是英文字母.数字和下划线的组合.(但是实践证明中文也是可以的,但是不建议.)print()会依次打印每

廖雪峰Git教程学习笔记

廖雪峰git简单教程学习笔记 教程地址:https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b0001.可以这样设计目录,在d:\reposisoty\ 在这个目录下面有很多的仓库.mkdir learngitcd learngit>>git init          #这样就把learngit 初始化成了一个仓库>>git status        #说明当前仓库的状态并

[k]廖雪峰Git教程-笔记

-------------------------- 廖雪峰Git教程-------------------------- 01:安装Git在Windows上安装Git,官网下载,然后按默认选项安装即可;右键菜单->“Git Bash”->弹出一个命令窗口;安装完成后,还需要最后一步设置,在命令行输入:$ git config --global user.name "Your Name"$ git config --global user.email "[emai