1、字典的基本知识
2、创建字典
3、字典长度
4、访问字典
5、检查字典中是否存在指定的键
6、嵌套字典
7、python中的四种集合数据类型
字典的基本知识 字典的理解字典(dictionary)是除列表(list)之外python中最灵活的内置数据结构类型。字典当中的元素是通过键来存储的,同时字典是有序的(从python3.7开始,字典是有序的,而在python3.6以及之前的版本中字典是无序的),可变的和不允许重复的集合
x = {'name':'john','age':'18'}
字典的认识
字典中项目的数据类型可以是任何数据类型
x = {'name':'john','age':18,'university':True}
print(type(x))
print(x)
执行结果
这里就很明显的看出来字典中项目的数据类型可以是任何数据类型
创建字典python中创建一个字典需要使用大括号(中英文输入法都可以,但是还是推荐使用英文输入法),大括号中要有键和值
x = {'name':'john','age':'18'}
print(type(x))
print(x)
执行结果
这样我们就成功创建了一个字典
字典长度当我们想要确定字典有多少个键值对时,字典中的键值对少的时候,我们可以一个一个的数出来,但是,当字典中的键值对多的时候,这种方法就显得很慢了,这时,我们仍然可以使用len()函数来获取字典中的键值对数(之前就讲了len()函数可以获取字符串的长度,列表和元组的项数)
x = {'name':'john','age':'18','university':'MIT'}
print(type(x))
print(x)
print(len(x))
执行结果
这里的3就说明了该字典中有3个键值对
访问字典 导出字典值字典中的项是有序的、可变的和不允许重复的。字典项以键值对的形式呈现,我们可以使用键名进行引用
x = {'name':'john','age':'18'}
print(type(x))
print(x)
print(x['name'])
print(x['age'])
执行结果
这样我们就将键所对的值给打印了出来
注意:字典中不能有两个相同键的项目,若有则重复值将覆盖现有值
x = {'name':'john','age':'18','name':'mary'}
print(type(x))
print(x)
执行结果
访问键值一、索引法
我们可以通过引用方括号内的键名来访问字典中的项目
x = {'name':'john','age':'18','university':'MIT'}
print(type(x))
print(x['name'])
print(x["age"])
print(x['university'])
执行结果
这里使用单引号和双引号都可以,但一定要是英文输入法
二、函数法
我们可以使用get()函数来获取键值
x = {'name':'john','age':'18','university':'MIT'}
y = x['name']
z = x.get('name')
print(y)
print(z)
执行结果
访问键名我们可以通过使用keys()函数来访问键名
x = {'name':'john','age':'18','university':'MIT'}
y = x.keys()
print(y)
执行结果
这样键名就打印了出来
添加项目当我们想要将一个项目添加到字典中,我们有如下方法
一、索引法
x = {'name':'john','age':'18','university':'MIT'}
x['favorite fruit'] = 'apple'
print(x)
执行结果
这样就把一个项目添加到了字典中
二、函数法
我们可以使用update()函数来达成我们的目的
x = {'name':'john','age':'18','university':'MIT'}
print(x)
x.update({'favorite fruit':'apple'})
print(x)
执行结果
这样也可以将一个项目添加到字典中
获取所有值的列表一、values()函数
当我们想要获取键值的列表时,我们可以使用values()函数
x = {'name':'john','age':'18','university':'MIT'}
y = x.values()
print(y)
执行结果
这样键值的列表就成功打印了出来
二、items()函数
当我们想要获取字典中的每个项目作为列表中的元组时,我们可以使用items()函数
x = {'name':'john','age':'18','university':'MIT'}
y = x.items()
print(y)
执行结果
这样就成功地将字典中的项目作为列表中的元组给打印了出来
更改字典当我们想要更改字典中的项目时,我们有如下方法
一、索引法
x = {'name':'john','age':'18','university':'MIT'}
x['name'] = 'barry'
print(x)
执行结果
这样我们就将原先的john改为了barry
二、函数法
我们可以使用update()函数来更改字典中的项目
x = {'name':'john','age':'18','university':'MIT'}
x.update({'name':'barry'})
print(x)
执行结果
这里update()函数使用格式是变量.update({改的项目})
删除字典我们可以使用pop()函数、popitem()函数或者del关键字来删除字典中的项目
一、pop()函数
pop()函数是删除具有指定键名的项
x = {'name':'john','age':'18','university':'MIT'}
print(x)
x.pop('age')
print(x)
执行结果
这样我们就成功的删除了地址项目
二、popitem()函数
popitem()函数是删除最后插入的项目(在python3.7之前的版本中,这个是随机删除项目的)
x = {'name':'john','age':'18','university':'MIT'}
print(x)
x.popitem()
print(x)
执行结果
这样就删除了字典中最后插入的项目
三、del关键字
1、删除项目
x = {'name':'john','age':'18','university':'MIT'}
print(x)
del x['university']
print(x)
执行结果
这样就将我们所指定删除的项目给删除了
2、删除字典
x = {'name':'john','age':'18','university':'MIT'}
del x
print(x)
执行结果
这里的报错就说明字典已经被删除了
清空字典我们可以使用clear()函数来清空字典
x = {'name':'john','age':'18','university':'MIT'}
x.clear()
print(type(x))
print(x)
执行结果
这就说明了字典中的项目已经被清空,只剩下一个空的字典
遍历字典一、当我们想要将字典中的所有键名给打印出来,我们有如下方法
1、for循环
x = {'name':'john','age':'18','university':'MIT'}
for i in x:
print(i)
执行结果
这样就成功的将键名都给打印了出来
2、for循环加上keys()函数
x = {'name':'john','age':'18','university':'MIT'}
for i in x.keys():
print(i)
执行结果
同样将键名给打印了出来
二、当我们想要将字典中的所有键值给打印出来,我们有如下方法
1、for循环的基础上加上索引
x = {'name':'john','age':'18','university':'MIT'}
for i in x:
print(x[i])
执行结果
这样就成功的将键值给打印了出来
2、for循环的基础上加上values()函数
x = {'name':'john','age':'18','university':'MIT'}
for i in x.values():
print(i)
执行结果
同样将键值给打印了出来
3、for循环的基础上加上get()函数
x = {'name':'john','age':'18','university':'MIT'}
for i in x:
print(x.get(i))
执行结果
仍然可以将键值给打印出来
三、当我们想要将键名和键值都打印出来,我们可以使用for循环加上item()函数
x = {'name':'john','age':'18','university':'MIT'}
for i,j in x.items():
print(i,j)
执行结果
这样就成功的将键名和键值都打印了出来
复制字典当我们想要复制字典时,我们有如下方法
一、copy()函数
x = {'name':'john','age':'18','university':'MIT'}
y = x.copy()
print(y)
执行结果
这样就复制成功了
二、内置dict()函数
x = {'name':'john','age':'18','university':'MIT'}
y = dict(x)
print(y)
执行结果
这样也可以复制字典且两种方法复制的效果一样
检查字典中是否存在指定的键当我们想要确定一个字典中是否存在指定的键,我们可以使用in关键字
x = {'name':'john','age':'18','university':'MIT'}
if 'name' in x:
print('age在x中')
执行结果
这里我们通过使用if语句和in关键字,我们就成功的检查了键是否在字典中
嵌套字典 创建嵌套字典一、创建一个字典包含其它三个字典
x = {'child1':{'name':'john','age':18},'child2':{'name':'barry','age':19}
,'child3':{'name':'curry','age':20}}
print(x)
执行结果
二、创建三个字典被一个字典所包含
x1 = {'name':'john','age':18}
x2 = {'name':'barry','age':19}
x3 = {'name':'curry','age':20}
x = {'child1':x1,'child2':x2,'child3':x3}
print(x)
执行结果
显然这两个做法的效果都是一样的
访问嵌套字典当我们想要访问一个嵌套字典时,我们可以采用如下图的操作
x = {'child1':{'name':'john','age':18},'child2':{'name':'barry','age':19}
,'child3':{'name':'curry','age':20}}
print(x['child2']['name'])
执行结果
这样就成功的访问了一个嵌套字典
python中的四种集合数据类型1、列表(list)是一个有序且可变的集合,允许重复项目。
2、元组(tuple)是一个有序且不可更改的集合,允许重复项目。
3、集合(set)是一个无序且无索引的集合,没有重复项目。
4、字典(dict)是一个有序且可变的集合,没有重复项目。
对字典进行说明
x = {'name':'john','age':'18','name':'john'}
print(type(x))
print(len(x))
执行结果
这里2就说明了字典是没有重复项目的
综上:我介绍了字典的相关知识和操作,也提到了一些函数,其中有老朋友也有新朋友,我们都要好好的掌握它们,还是那句话自己一定要亲自去敲一敲代码,这样对自己学习的帮助才大。
以上就是python基础训练—字典的全部内容



