###一、创建字典的两种方式:
##1、采用花括号的形式:用的比较多(比较推荐)
#列表:[]
#元组:()
# person = {'username': 'lucy', 'age': '18'}

##2、使用函数的形式
# person = dict(username='lucy',age='18')

###二、基本操作:
##1、len(d):返回字典的键值对的长度

# person = {'username': 'lucy', 'age': '18'}
# length = len(person)
# print(length)

##2、获取字典中,键对应的那个值
# 字典是无序的,不能通过下标的形式进行操作;
# 字典中的键不能重复,如果重复了,那么后面给的键值对会把前面同名的键进行覆盖;
# 如果通过方括号的形式访问一个字典中的key,但是这个key不存在,那么就会抛出一个异常,如果不想让他抛出异常,可以使用get方法
# person = {'username': 'lucy', 'age': '18'}
# a = person['age' ]
# print(a)

##3、给字典添加值:如果这个字典中已经存在了这个key,那么就是修改
#如果这个字典中不存在这个key,那么就是添加

# person = {'username': 'lucy', 'age': '18'}
# person['height']= 170
# print(person )

# person = {'username': 'lucy', 'age': '18'}
# person['username']= 'yaya'
# print(person )

##4、删除字典中的一项
#
# person = {'username': 'lucy', 'age': '18'}
# del person['username']
# print(person )

##5、K in d:用来检查字典中是否存在某个键值对

# person = {'username': 'lucy', 'age': '18'}
# if 'username' in person:
# print(True )
# else:
# print(False )

##6、字典中的键可以是任意的不可变类型,比如:浮点类型、整型、长整型、字符串或者元组
# 列表:因为列表是可变的,所以不能当作字典里的key
#
# temp = {('a','b'):'12'}
# print(temp )



###字典的常用方法
#1、'clear':清除字典中所有的项
#
# a= {'username': 'lucy', 'age': '18'}
# print(a)
# a.clear()
# print(a)

#2、'get':访问字典中那个键对应的那个值。但是和[]的形式不同的是:这个方法不会抛出异常,如果这个键不在字典中存在

# a= {'username': 'lucy', 'age': '18'}
# age=a.get('age')
# print(age)
# gender=a.get('gender')
# print(gender)

#3、'has_key':用来判断某个键是否存在在字典中。相当于'key in d'
# (在python3中没有这个方法)
#4、'pop':用来获得对应于定键的值,然后将这个键和值的项从字典中删除,会返回这个值。
# a= {'username': 'lucy', 'age': '18'}
# a.pop('age')
# print(a)


#5、'popitem':随机的移除字典中的一项。因为字典是无序的,所以是随机的
# a= {'username': 'lucy', 'age': '18'}
# a.popitem()
# print(a)

#6、'update':用一个字典更新另外一个字典,如果遇到相同的键,则会覆盖
# a= {'username': 'lucy', 'age': '18'}
# b = {'gender':'female'}
# a.update(b)
# print(a)


###遍历字典的方式
#1、遍历字典中的所有的key:使用keys方法:这个方法将所有的键以列表的方式返回
# person = {'username': 'lucy', 'age': '18','gender':'female'}
# for key in person.keys():
# print(key)


#2、也是遍历字典中的所有keys,但是使用的是iterkeys,如果字典内容比较多,那么推荐使用iterkeys方法,
# 因为这个方法返回的是一个迭代器,迭代器有一个优势,每次只会去取一个值,不会一次性把所有的数据取出来,
# 这样性能更高

# person = {'username': 'lucy', 'age': '18','gender':'female'}
# for key in person.__iter__():
# print(key)

#3、遍历字典中的所有value:使用values方法,这个方法将所有的值以列表的方式返回
# person = {'username': 'lucy', 'age': '18','gender':'female'}
# for value in person.values() :
# print(value )



#4、遍历字典中的所有value:使用itervalues方法,这个方法将返回一个迭代器,用来遍历所有的值
# person = {'username': 'lucy', 'age': '18','gender':'female'}
# for value in person.__iter__() :
# print(value)

#5、遍历字典中所有的键值对:使用items方法,这个方法将所有的键值对以列表的方式返回
# person = {'username': 'lucy', 'age': '18','gender':'female'}
# for item in person.items() :
# print(item)
# for key,value in person.items() :
# print(key,value)
#6、遍历字典中所有的键值对:使用iteritems方法,这个方法将返回一个迭代器,用来遍历所有的值
# person = {'username': 'lucy', 'age': '18','gender':'female'}
# for iteritems in person.__iter__() :
# print(iteritems)
posted on 2019-06-30 10:35  yaya9098  阅读(145)  评论(0编辑  收藏  举报