zoukankan      html  css  js  c++  java
  • Python【每日一问】03

    问:请给出下列代码的执行结果,并解释

    a = dict.fromkeys([6, 7, 8], ["testing", {"name": "ken"},123])
    print(a)
    a[7][1]["name"] = "sucy"
    print(a)

    答:

    {6: ['testing', {'name': 'ken'}, 123], 7: ['testing', {'name': 'ken'}, 123], 8: ['testing', {'name': 'ken'}, 123]}
    {6: ['testing', {'name': 'sucy'}, 123], 7: ['testing', {'name': 'sucy'}, 123], 8: ['testing', {'name': 'sucy'}, 123]}

    解释原因:

    (1)fromkeys() 方法用于创建一个新的字典,以可迭代对象((字符串、列表、元祖、字典))中的元素分别作为字典中的键,所有键对应同一个值,默认为None

    (2)fromkeys() 方法语法:

    dict.fromkeys(iterable[,value=None])

    iterable 就是用于创建新的字典的键的可迭代对象

    value 是一个可选参数,如果不设置的话就是None

    a = dict.fromkeys([6, 7, 8], ["testing", {"name": "ken"},123])

    这个例子中 就把 ["testing", {"name": "ken"},123] 这个列表作为 value

    由于所有键对应同一个值,当使用 a[7][1]["name"] = "sucy" 改变值时,所有键对应的值都改变了

    (3)fromkeys() 方法 的返回结果是一个新的字典

  • 相关阅读:
    四轴PID思路整理
    STM32输入捕获TIM2四通道
    四轴和遥控器的对应
    四层板学习(二)
    四层板学习(一)布线前的准备
    冲突的处理方法
    散列表
    重设置电脑时间
    深圳销量统计源码分析
    源码分析
  • 原文地址:https://www.cnblogs.com/ElegantSmile/p/10696208.html
Copyright © 2011-2022 走看看