字典
字典是另一种可变容器模型,且可存储任意类型对象。
字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中 ,格式如下所示:
d = {key1 : value1, key2 : value2 }
键必须是唯一的,但值则不必。
值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组。
#一个简单的字典实例:
dict = {'Alice': '2341', 'Beth': '9102', 'Cecil': '3258'}
#也可如此创建字典:
dict1 = { 'abc': 456 }
dict2 = { 'abc': 123, 98.6: 37 }
增删改查
获取:
a = {'a':'xxx','b':'ooo'}
a.get('c') 不会报错, 如果打印会返回 None--------- print(a.get('c') )----> None
a['c'] 会报错
dict['Key']
dict = { 'Name':'niuli','Age':'18','Class':'4'}
print(dict)
print(dict['Age'])#访问值
dict = {'name':'niuli','age':'18','class':'first'}
print(dict)
dict['name'] = '牛力'### 改
print(dict)
dict['age'] = '30'### 改
print(dict)
dict['school'] = '北京大学'##### 增加
print(dict)
dict['住址'] = '北京市'##### 增加
print(dict)
### 删除 del
del dict['name']
print(dict)
# del dict['Name'] # 删除键 'Name'
# dict.clear() # 清空字典
# del dict # 删除字典
# 字典键的特性字典值可以是任何的 python 对象,既可以是标准的对象,也可以是用户定义的,但键不行。两个重要的点需要记住:
# 1)不允许同一个键出现两次。创建时如果同一个键被赋值两次,后一个值会被记住,如下实例:
dict = {'Name': 'Runoob', 'Age': 7, 'Name': '小菜鸟'}print ("dict['Name']: ", dict['Name'])
以上实例输出结果:
dict['Name']: 小菜鸟#
2)键必须不可变,所以可以用数字,字符串或元组充当,而用列表就不行,如下实例:
dict = {['Name']: 'Runoob', 'Age': 7}print ("dict['Name']: ", dict['Name'])
以上实例输出结果:
Traceback (most recent call last): File "test.py", line 3, in dict = {['Name']: 'Runoob', 'Age': 7}
TypeError: unhashable type: 'list'
字典内置函数&方法
dict = {'name':'niuli','age':'18','class':'first'}
print(len(dict))# 计算字典元素个数,即键的总数
str(dict)# 输出字典
type(dict)#返回输入的变量类型,如果变量是字典就返回字典类型