python 5.3

一、字典的定义及数据类型

#定义及特点 #字典存储的都是关系型数据。
#可变类型(不可哈希):list/dic/set
#不可变类型(可哈希):str/int/tuple/bool
#容器类:list/dic/tuple
#非容器累:str/int/bool/
#字典中的键必须是可哈希的,唯一的,不可变类型。
#存储大量的关系型数据,值可以改变。
#字典的运算速度快 #py3.5之前是无序的,3.6之后是有序的。

二、字典的增删改查

# 字典:
# 增:
# dic = {
#        'name' : 'liujj',
#        'age' : 18,
#        'hobby':'book'
#        }
#dic[]
# dic['favorateanimal'] = 'cat'
# print(dic)
# dic['name'] = 'liupeipei'       #有则覆盖,相当于字典的改。
# print(dic)
#第二种,setdefault()
# dic.setdefault('animal','cat')
# print(dic)
# dic.setdefault('name','liupeipei')    #setdefault() 有则原字典不变,不覆盖。
# print(dic)
#
#第一种,pop   有返回值,返回值为键所对应的值。
# print(dic.pop('hobby'))
# print(dic)
# print(dic.pop('ani','找不到呀'))      #直接用‘键’来删除,后面加‘如果没找到则返回的值'
# print(dic)
#第二种del 可以删除整个字典,也可以按照键来删除
#第三种clear  清空内容
# 第四种pop_item  随机删除(py3种默认删除最后一对)。
# dic.popitem()                      #有返回值,返回值为元祖,元祖里面是被删除的键值对。
# print(dic)
#
#第一种,直接改,就是增的第一种方法(有则增无则改)
# dic['hobby'] = 'play'
# print(dic)
#第二种,update(),适用于两个字典相互改动。
# dic2 = {'name': 'xiaojia',
#         'shengao': '100cm',
#         'sex' : 'girl'
#         }
# dic2.update(dic)                 #有相同的则覆盖,没有则添加。
# print(dic2)
#
#第一种,直接查询,查到的为键所对应的值。
# print(dic['age'])             #类似字典的增,直接按键查找,返回为对应的值。dic后为中括号[]。
#第二种,可以有返回值的。
# print(dic.get('animal','找不到啦'))  #如果找不到则返回设定的返回值。
#第三种,for循环。
# for i in dic.keys():            #dic.keys,输出字典的各个键,类型为 dic_keys
#     print(i,type(dic.keys()))
# for i in dic.values():          #dic.values,输出字典的各个值,类型为 dic_values
#     print(i)
# for k,v in dic.items():          #dic.items,输出字典的各个键值对,为元祖形式,用两个变量,将元祖的两个值赋给每个变量。
    # print(k,v)                     如果一个变量,则每一次输出一个元祖。
#字典转换成列表:        list(dic.keys())
# print(dic['name'])
#
# dic = {
#     'name_list': ['碗蓉', '俊俊', '爽妹'],
#     'status': None,
#     'personal_msg': {
#         'name': '反面教材',
#         'age': 25,
#         'hobby_list':['抽烟', '喝酒', '烫头'],
#     }
# }
# 1,给dic添加一个键值对,学校:老男孩
# dic['学校'] = '老男孩'
# print(dic)
# 2,将status对应的值改成True
# dic['status'] = True
# print(dic)
# 3,给name_list对应的列表追加一个元素:平平
# dic['name_list'].append('平平')
# print(dic)
# 4,给personal_msg对应的字典添加一个键值对sex:男
# dic['personal_msg']['sex'] = '男'
# print(dic)
# 5,将hobby_list 对应的列表中的烫头改成唱歌。
# dic['personal_msg']['hobby_list'][2] = '唱歌'
# print(dic)
增删改查

猜你喜欢

转载自www.cnblogs.com/liujjpeipei/p/8985871.html