zoukankan      html  css  js  c++  java
  • python字典中dict.get()和dict.setdefault()的异同点

    相同点:

    • 两者是参数相同:dict.get(key, default=None), dict.setdefault(key, default=None)
    • 如果指定的键不存在时,两者都返回默认值,默认是None
    • 如果指定的键存在时,即使设置默认值,返回的还是指定键的值

    不同点:

    • 当指定的键不存在时,dict.setdefault()方法可以通过增加键值对来更新字典,而dict.get()方法不行

    实例:

    dict.get(key, default=None)

    >>>dict_1 = {'Name': 'Jack'}   
    >>>dict_1.get('Age')          #默认default为None,即不返回值
    >>>dict_1.get('Age', 'NA')           #当指定的键不存在时,返回default的值'NA'
    'NA'
    >>>dict_1.get('Name': 'Tom')         #当指定的键存在时,即使设置default的值,返回的也是指定键的值'Jack'
    'Jack'
    >>>dict_1
    {'Name': 'Jack'}                     #dict_1中的键值对没有改变

    dict.setdefault(key, default=None)

    >>>dict_1 = {'Name': 'Jack'}  
    >>>dict_1.setdefault('Age')          #默认default为None,即不返回值
    >>>dict_1                            #dict_1中已经增加'Age':None的键值对
    {'Name': 'Jack', 'Age': None}
    >>>dict_1.setdefault('Age', 23)      #当指定的键存在时,即使设置default的值,返回的也是指定键的值None,即不返回值
    >>>dict_1
    {'Name': 'Jack', 'Age': None}
  • 相关阅读:
    javascript如何封装函数
    addEventListener和attachEvent区别
    Infinity NaN undefined和null
    hasOwnProperty
    蜂巢式图片墙布局
    复选框使用总结
    文本框获得焦点时改变背景颜色
    自定义动画animate
    click()、bind()、live()和delegate()方法
    图片提示效果
  • 原文地址:https://www.cnblogs.com/my_captain/p/8848083.html
Copyright © 2011-2022 走看看