一篇文章带你了解python字典基础

作者:wakeyo_J 时间:2021-05-02 23:08:23 

目录
  • 1. 字典基础知识

    • 字典的基本格式表示

    • 字典的键、值设置要求

      • 1)键的设置要求

      • 2)值的设置要求

  • 2. 字典元素增加

    • 1.利用赋值给字典增加元素

      • 2.利用setdefault()方法给字典增加元素

      • 3. 字典值查找

        • 1.字典名+[key]查找

          • 2.利用get()方法查找

          • 4. 字典值修改

            • 1.利用赋值修改键对应的值

              • 2.利用update()方法修改键对应的值

              • 5. 字典元素删除

                • 1.利用del函数删除

                  • 2.利用pop()方法删除

                    • 3.利用popitem()方法删除

                    • 6. 字典遍历操作

                      • 1.遍历所有键值对:

                        • 遍历所有键

                          • 遍历所有值

                          • 7. 字典其他操作方法

                            • 1.in成员操作

                              • 2.clear()方法

                                • 3.copy()方法

                                  • 4.fromkeys()方法

                                  • 总结

                                    1. 字典基础知识

                                    字典:是可变的无序集合,以键值对为基本元素可以存储各种数据类型的集合,用大括号({})表示字典的开始和结束,元素之间用半角逗号(,)分隔。键值对,由键(key)和值(value)组成,中间用冒号(:)分隔。如:“wky”:28。字典属于典型的一对一的映射关系的数据类型。

                                    • 字典可以理解为“映射”,映射是一种键(索引)和值(数据)的对应

                                    一篇文章带你了解python字典基础

                                    字典的基本格式表示


                                    >>> #空字典
                                    >>> {}
                                    {}
                                    >>> #定义一个元素的字典变量
                                    >>> d1 = {"wky":28}
                                    >>> len(d1)
                                    1
                                    >>> d2 = {"wky":1,"lyj":2}
                                    >>> len(d2)
                                    2
                                    >>>

                                    字典的键、值设置要求

                                    1)键的设置要求

                                    (1)唯一性:一个字典对象里所有的键必须是唯一的。


                                    >>> d3={1:"wky",2:"lyj",2:"lyj"}
                                    >>> len(d3)
                                    2
                                    >>> d3={1:"wky",2:"lyj",2:"wa"}
                                    >>> len(d3)
                                    2

                                    在定义字典变量时,python允许输入重复的元素,但是在调用时,python只会保留最后一个键相同的元素。为了避免出现问题,在定义字典对象时,应该养成严格定义每个元素键并保证键的唯一性的良好习惯。

                                    (2)不可变性,字典在使用过程中不能对元素的键进行直接修改。


                                    >>> d2={"wkys":1,"lyj":2}    #wky错误写成wkys

                                    2)值的设置要求

                                    一篇文章带你了解python字典基础

                                    2. 字典元素增加

                                    1.利用赋值给字典增加元素


                                    >>> d2 = {"wky":1,"lyj":2}
                                    >>> d2["wa"]=3
                                    >>> d2
                                    {'wky': 1, 'lyj': 2, 'wa': 3}
                                    >>>

                                    上述增加元素的前提是:要求字典里没有新增的键,否则会修改指定键的值。

                                    列表变量带中括号与字典变量带中括号之间的区别:
                                    (1)列表:L[x]=value的方法,修改对应的元素,x为指定的下标
                                    (2)字典:D[x]=value的方法,为字典增加新元素,k为指定的键,且k在字典对象中不存在。

                                    2.利用setdefault()方法给字典增加元素

                                    setdefault()使用格式为D.setdefault(k[,d])。D代表字典对象,k代表新增键,d代表新增键对应的值(若不提供值,则默认值为None)


                                    >>> d1={"wky":1,"lyj":2}
                                    >>> d1.setdefault("wa",10)
                                    10
                                    >>> d1
                                    {'wky': 1, 'lyj': 2, 'wa': 10}
                                    >>> d1.setdefault('wake')
                                    >>> d1
                                    {'wky': 1, 'lyj': 2, 'wa': 10, 'wake': None}
                                    >>>

                                    用setdefault()方法新增键值对时,若指定键已经存在,则只显示已经存在键的值。

                                    3. 字典值查找

                                    1.字典名+[key]查找


                                    >>> d2={'wky': 1, 'lyj': 2, 'wa': 10, 'wake': None}
                                    >>> d2["lyj"]
                                    2

                                    若指定的键在字典对象中不存在会报错。


                                    >>> d2={'wky': 1, 'lyj': 2, 'wa': 10, 'wake': None}
                                    >>> d2['w']
                                    Traceback (most recent call last):
                                     File "<pyshell#28>", line 1, in <module>
                                       d2['w']
                                    KeyError: 'w'         #提示键出错

                                    2.利用get()方法查找

                                    get()方法使用格式D.get(k[,d]),D代表字典对象,k为指定的键,d为键对应的值。


                                    >>> d2={'wky': 1, 'lyj': 2, 'wa': 10, 'wake': None}
                                    >>> d2.get("wky")
                                    1
                                    >>> #查找字典中不存在的键
                                    >>> d2.get('w')
                                    >>>

                                    get()方法指定的键在字典中不存在时返回空值。

                                    4. 字典值修改

                                    1.利用赋值修改键对应的值


                                    >>> d2={'wky': 1, 'lyj': 2, 'wa': 10, 'wake': None}
                                    >>> d2["wake"]=99
                                    >>> d2
                                    {'wky': 1, 'lyj': 2, 'wa': 10, 'wake': 99}
                                    >>>

                                    2.利用update()方法修改键对应的值

                                    update()方法的使用格式D.update(d1),D代表要更新的字典对象,d1为提供更新内容的字典。若d1中提供的键在D中,则更新D里对应的键值,若不存在,则增加键值对。

                                    1)更新字典里键对应的值


                                    >>> d1={'wky': 1, 'lyj': 2, 'wa': 10, 'wake': None}
                                    >>> d2={"wky":10,"wake":89}
                                    >>> d1.update(d2)
                                    >>> d1
                                    {'wky': 10, 'lyj': 2, 'wa': 10, 'wake': 89}

                                    2)新增键值对


                                    >>> d1={'wky': 1, 'lyj': 2, 'wa': 10, 'wake': None}
                                    >>> d1.update({"wakeyo":100})
                                    >>> d1
                                    {'wky': 10, 'lyj': 2, 'wa': 10, 'wake': 89, 'wakeyo': 100}

                                    5. 字典元素删除

                                    1.利用del函数删除


                                    >>> d1={'wky': 10, 'lyj': 2, 'wa': 10, 'wake': 89, 'wakeyo': 100}
                                    >>> del(d1["wakeyo"])
                                    >>> d1
                                    {'wky': 10, 'lyj': 2, 'wa': 10, 'wake': 89}
                                    >>>

                                    2.利用pop()方法删除

                                    pop()方法使用格式D.pop(k[,d]),D代表字典,k代表需要删除的元素的键,d为键对应的值(可选)。


                                    >>> d1={'wky': 10, 'lyj': 2, 'wa': 10, 'wake': 89}
                                    >>> pl=d1.pop('wake')
                                    >>> pl
                                    89
                                    >>>

                                    3.利用popitem()方法删除

                                    popitem()方法使用格式D.popitme(),D代表字典,随即返回一个键值对元组,并在字典里删除对应的元素。


                                    >>> d1={'wky': 10, 'lyj': 2, 'wa': 10, 'wake': 89}
                                    >>> k1,v1=d1.popitem()
                                    >>> k1,v1
                                    ('wake', 89)
                                    >>> d1
                                    {'wky': 10, 'lyj': 2, 'wa': 10}
                                    >>> t1=d1.popitem()
                                    >>> t1
                                    ('wa', 10)
                                    >>> type(t1)
                                    <class 'tuple'>
                                    >>>

                                    del函数、pop()方法、popitem()方法若对不存在的元素进行操作时,都将报错。

                                    6. 字典遍历操作

                                    1.遍历所有键值对:

                                    利用items()方法遍历所有键值对

                                    items()方法使用格式D.items(),D代表字典,以元组形式返回字典的所有元素。


                                    >>> d1={'wky': 10, 'lyj': 2, 'wa': 10, 'wake': 89}
                                    >>> for get_l in d1.items():
                                    print(get_l)
                                    #结果
                                    ('wky', 10)
                                    ('lyj', 2)
                                    ('wa', 10)
                                    ('wake', 89)

                                    >>> d1.items()
                                    dict_items([('wky', 10), ('lyj', 2), ('wa', 10), ('wake', 89)])
                                    >>> type(d1.items)
                                    <class 'builtin_function_or_method'>
                                    >>>

                                    遍历所有键

                                    1)利用字典变量循环遍历


                                    >>> d1={'wky': 10, 'lyj': 2, 'wa': 10, 'wake': 89}
                                    >>> for gets in d1:
                                    print(gets)

                                    #结果
                                    wky
                                    lyj
                                    wa
                                    wake

                                    2)利用keys()方法获取字典键


                                    >>> d1={'wky': 10, 'lyj': 2, 'wa': 10, 'wake': 89}
                                    >>> for get_l in d1.keys():
                                    print(get_l)

                                    #结果
                                    wky
                                    lyj
                                    wa
                                    wake

                                    遍历所有值

                                    1)通过键遍历值


                                    >>> d1={'wky': 10, 'lyj': 2, 'wa': 10, 'wake': 89}
                                    >>> for get_key in d1:
                                    print(d1[get_key])

                                    #结果
                                    10
                                    2
                                    10
                                    89

                                    2)利用values()方法获取字典值


                                    >>> d1={'wky': 10, 'lyj': 2, 'wa': 10, 'wake': 89}
                                    >>> for get_v in d1.values():
                                    print(get_v)

                                    #结果
                                    10
                                    2
                                    10
                                    89

                                    7. 字典其他操作方法

                                    1.in成员操作


                                    >>> d1={'wky': 10, 'lyj': 2, 'wa': 10, 'wake': 89}
                                    >>> if "wky" in d1.keys():
                                    print("wky在字典里")
                                    else:
                                    print("wky不在字典里")

                                    wky在字典里

                                    2.clear()方法


                                    >>> d1={'wky': 10, 'lyj': 2, 'wa': 10, 'wake': 89}
                                    >>> d1.clear()
                                    >>> d1
                                    {}

                                    3.copy()方法


                                    >>> d1={'wky': 10, 'lyj': 2, 'wa': 10, 'wake': 89}
                                    >>> d2=d1.copy()
                                    >>> d2
                                    {'wky': 10, 'lyj': 2, 'wa': 10, 'wake': 89}
                                    >>> id(d1)
                                    2432414090296
                                    >>> id(d2)
                                    2432414587208
                                    >>> d3=d2
                                    >>> id(d3)
                                    2432414587208

                                    通过copy()方法的复制,可以避免字典变量之间直接赋值指向同一个地址。

                                    4.fromkeys()方法

                                    fromkeys()方法使用格式D.fromkeys(iterable),D代表字典,iterable代表列表对象,用于指定字典键,生成的D的键对应的值默认为None。


                                    >>> d1={}.fromkeys(["wky","lyj","wa"])
                                    >>> d1
                                    {'wky': None, 'lyj': None, 'wa': None}
                                    >>>

                                    来源:https://blog.csdn.net/m0_55697123/article/details/119153240

                                    标签:python,字典,基础
                                    0
                                    投稿

                                    猜你喜欢

                                  • 关于搜索建议的两点小问题

                                    2011-09-16 20:15:29
                                  • 用正则替换所有URL

                                    2009-03-13 13:51:00
                                  • 完美解决ARIMA模型中plot_acf画不出图的问题

                                    2023-07-13 14:17:34
                                  • 淘宝网获亚洲最佳在线客户体验大奖

                                    2009-03-31 12:55:00
                                  • TensorFlow中tf.batch_matmul()的用法

                                    2022-06-06 10:33:37
                                  • ASP访问统计计数器代码

                                    2008-03-20 13:33:00
                                  • ASP 正则表达式常用的几种方法(execute、test、replace)

                                    2010-03-02 20:23:00
                                  • Python+pyecharts绘制双动态曲线教程详解

                                    2023-03-04 09:19:48
                                  • Python+matplotlib实现绘制等高线图示例详解

                                    2022-09-18 05:44:11
                                  • GoFrame框架gcache的缓存控制淘汰策略实践示例

                                    2023-07-22 06:41:19
                                  • python try except 捕获所有异常的实例

                                    2023-03-22 18:49:50
                                  • python分割和拼接字符串

                                    2023-05-12 05:57:03
                                  • Python实现判断字符串中包含某个字符的判断函数示例

                                    2023-03-21 03:43:51
                                  • 如何做一个文本书写器?

                                    2010-07-12 18:58:00
                                  • win8下python3.4安装和环境配置图文教程

                                    2022-10-29 03:23:29
                                  • Python使用微信SDK实现的微信支付功能示例

                                    2022-09-22 00:19:41
                                  • 使用Python做定时任务及时了解互联网动态

                                    2021-07-08 17:54:16
                                  • Python中parsel两种获取数据方式小结

                                    2023-03-01 17:44:50
                                  • Python3之外部文件调用Django程序操作model等文件实现方式

                                    2023-07-19 01:17:29
                                  • 在Python中使用M2Crypto模块实现AES加密的教程

                                    2022-09-29 17:43:59
                                  • asp之家 网络编程 m.aspxhome.com