字典是另一种可变容器模型,且可存储任意类型对象。
字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中 ,格式如下所示:
d = {key1 : value1, key2 : value2 }
键必须是唯一的,但值则不必。
值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组。
字典值可以是任何的 python 对象,既可以是标准的对象,也可以是用户定义的,但键不行。
两个重要的点需要记住:
1)不允许同一个键出现两次。创建时如果同一个键被赋值两次,后一个值会被记住。
2)键必须不可变,所以可以用数字,字符串或元组充当,而用列表就不行。
def main(): dict1={'name':'68喜','age':38,'gender':True} print(dict1['name']) print(dict1['age']) print(dict1['gender']) dict1['name']='罗万财' print(dict1) dict1.update(height=170.5,fav=['吃','喝']) print(dict1.pop('age')) print(dict1.popitem()) print(dict1) for x in dict1: print(x,'-->',dict1[x]) dict.setdefault('motto','成年人的世界没有容易二字') if 'motto' in dict1: print(dict1['motto']) else: print('呵呵') del dict1['motto'] print(dict1['motto']) if __name__ == '__main__': main() 结果: 68喜 Traceback (most recent call last): 38 True {'name': '罗万财', 'age': 38, 'gender': True} main() 38 ('fav', ['吃', '喝']) {'name': '罗万财', 'gender': True, 'height': 170.5} name --> 罗万财 gender --> True height --> 170.5 成年人的世界没有容易二字 print(dict1['motto']) KeyError: 'motto'