目录
1.字典
1.1.认识字典
- 字典在python中,是可以让数据更加清晰的数据容器,用“{}”表示,里面的元素以键值对的方式存储,例如:
#创建一个外星人游戏,这些外星人的颜色和点数各不相同
#这是一个简单的字典,存储了有关特定外星人的信息
alien_0={'color':'green','points':5}
print(alien_0)
#使用两条print语句来访问并打印这些信息
print(alien_0['color'])
print(alien_0['points'])
>>>{'color': 'green', 'points': 5}
green
5
在字典中,字典的键有两个要求:
- ①字典的键必须是不可变数据类型
- 不可变数据类型包括:数字、字符串、元组、布尔值。
- 可变数据类型:字典,列表
例如以下方式,都可以创建字典:
dict1={1:'小明'}
dict2={'name':'小明'}
dict3={(1,2):'小明'}
dict4={False:'小明'}
print(dict1,dict2,dict3,dict4)
>>>{1: '小明'} {'name': '小明'} {(1, 2): '小明'} {False: '小明'}
- ②字典的键不允许重复
- 如果字典里面的键重复了,后面键的值会覆盖前面键的值:
dict1 = {'name':'小蓝','name':'小绿'}
print(dict1)
>>>{'name': '小绿'}
字典里面的值可以是任意数据类型,可以是数字、字符串、元组、布尔值,也可以是列表,甚至字典。
dict1 = {'age':1} #数字
dict2 = {'name':'小明'} #字符串
dict3 = {'data':(1,2)} #元组
dict4 = {'result':False} #布尔值
dict5 = {'name':['小明','小红']} #列表
dict6 = {'小明':{'age':21,'sex':'男'}} #字典
print(dict1)
print(dict2)
print(dict3)
print(dict4)
print(dict5)
print(dict6)
>>>{'age': 1}
{'name': '小明'}
{'data': (1, 2)}
{'result': False}
{'name': ['小明', '小红']}
{'小明': {'age': 21, 'sex': '男'}}
1.2.访问字典中的值
要获取与键相关的值,可依次指定字典名和放在方括号里的键:
dict1 = {'color':'green','piece':56,'size':'superbig'}
print(dict1['color']) #这将返回dict1中与键'color'相关联的值
print(dict1['piece']) #这将返回dict1中与键'piece'相关联的值
print(dict1['size']) #这将返回dict1中与键'size'相关联的值
>>>green
56
superbig
1.3.字典的增删改查
字典是一种可变的数据容器,所以具有增删改查的功能。
- 字典中元素是无顺序排列的
- 只能通过key来获取value
1.3.1.增加
字典是一种动态结构,在字典中,通过使用"[key]"的形式,并且给它赋值。如果这个key当前不包含在字典中,那么就会把这个key以及value同时加入到字典中。
alien_0={'color':'green','points':5}
print(alien_0)
#现在给外星人添加坐标
alien_0['x_position']=0
alien_0['y_position']=5
print(alien_0)
>>>{'color': 'green', 'points': 5}
{'color': 'green', 'points': 5, 'x_position': 0, 'y_position': 5}
{'color': 'green', 'points': 5, 'y_position': 5, 'x_position': 0}
#Python不关心键值对的添加顺序,只关心键和值的关联关系。
先创建一个空字典,有时候我们为了方便,会先创建一个空字典,然后往里面添加元素:
alien_0={}
print(alien_0)
#现在给外星人添加坐标
alien_0['y_position']=5
alien_0['x_position']=0
print(alien_0)
>>>{}
{'y_position': 5, 'x_position': 0}
1.3.2.删除
a.在字典中,我们可以使用pop()从字典中移除某个元素
alien_0={}
print(alien_0)
#现在给外星人添加坐标
alien_0['y_position']=5
alien_0['x_position']=0
print(alien_0.pop('y_position'))
print(alien_0)
>>>{}
5
{'x_position': 0}
b.也可以使用del删除字典里面的元素:
alien_0={}
print(alien_0)
#现在给外星人添加坐标
alien_0['y_position']=5
alien_0['x_position']=0
del alien_0['x_position']
print(alien_0)
>>>{}
{'y_position': 5}
c.也可以使用clear清除字典里面所有的元素:
alien_0={}
print(alien_0)
#现在给外星人添加坐标
alien_0['y_position']=5
alien_0['x_position']=0
print(alien_0)
alien_0.clear() #删除全部元素
print(alien_0)
>>>{}
{'y_position': 5, 'x_position': 0}
{}
1.3.3.修改
在字典中,通过对字典中的键重新赋值,可以修改元素
a