python全栈闯关--5-字典

Posted zxw-xxcsl

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python全栈闯关--5-字典相关的知识,希望对你有一定的参考价值。

1、数据类型的划分

数据类型分为:可变数据类型,不可变数据类型

    • 不可变数据类型:元祖、bool、int、str                    可哈希
    • 可变数据类型:list,dic,set                                   不可哈希

2、dic的数据结构

dic key:必须为可哈希数据类型,不可以变数据类型

      value:任意数据类型

dic 优点:二分查找,存储大量关系型数据

dic特点:3.6以前无序,3.6后有序

 

3、dic的增、删、改、查

定义

dic = 
    name: [bear, Honey, bee],
    myPthon: [num1: 71, avg_age: 18
                ,num1: 71, avg_age: 18
                ,num1: 71, avg_age: 18],
    True: 1,
    (1, 2, 3): bee,
    2: Honey

print(dic)

The key value is an immutable type(hash),which can be tuple,bool,int,str. (immutable:不可变)

 But when the key value is a tuple, it must be an immutable type.

A varable tuple like this is not posible:(1, 2, 3, [1, 2]).

It will reopot errors:TypeError: unhashable type: ‘list‘.

dic1 = age: 18, name: bear, sex: male
dic2 = 
# if the key value does not exist to be added to the dictionary
dic1[high] = 185
# if the dictionary has a key value, update the corresponding value to the dictionary (corresponding:相符的)
dic1[age] = 15

# Key value does not exist, default add none to dictionary
dic1.setdefault(weight)
# The key value does note exist, if the second parameter is specified,add the (key,value) pair to the dictionary
dic1.setdefault(weight, 90)
# If the key value already exists,the specified value will not be update to the dictionary
dic1.setdefault(name, bee)

以上是关于python全栈闯关--5-字典的主要内容,如果未能解决你的问题,请参考以下文章

python全栈闯关--11-装饰器初识

python全栈闯关--12-装饰器进阶

python全栈闯关--XX-细节总结汇总

python全栈闯关--10-2函数的嵌套和作用域

python全栈闯关--6-小知识点总结

2018-5-31-Python全栈开发day12-列表,字典,元组