• python学习字典


    ---恢复内容开始---

    字典

      键key >映射> 值value

    例如

      brand=['a', 'b', 'c', 'd']

      slogan=['1', '2', '3', '4']

      print('c对应的是', slogan[brand.index('c')])

    创建字典

      dict1 = ['a':1, 'b':2, 'c':3, 'd':4]  //[键:值]  数组形式

      dict2 = dict((('a', 1), ('b', 2), ('c', 3), ('d', 4)))  //元组形式

      dict3 = dict(a=1, b=2, c=3, d=4)  //不能给值加引号,创建后会自动加。而且排序会有变化

    使用字典

      dict1['a']  为1

    传递值,改变值,创造项

      dict1['a']  = '3' 

      dict1['e']  = '5' 

    dict4.fromkeys()  

    >>> dict4 = {}
    >>> dict4.fromkeys((1,2,3))  //直接创建对应为None的字典
    {1: None, 2: None, 3: None}
    >>> dict4.fromkeys((1,2,3),'num')  //全部值都修改
    {1: 'num', 2: 'num', 3: 'num'}
    >>> dict4.fromkeys((1,2,3),('one', 'two','three'))  //无法批量修改
    {1: ('one', 'two', 'three'), 2: ('one', 'two', 'three'), 3: ('one', 'two', 'three')}
    >>> dict4.fromkeys((1,3),'num')  //无法对个别key修改,而是直接创建一个新的字典
    {1: 'num', 3: 'num'}

    dict4.keys()  //键的元组

    dict4.values()  //值的元组

    dict4.items()  //对应的键和值元组

     >>> dict4 = dict4.fromkeys(range(4),'赞')

    >>> dict4

    {0: '赞', 1: '赞', 2: '赞', 3: '赞'}

    >>> for eachKey in dict4.keys():

        print(eachKey)

    0

    1

    2

    3

    对于其他没有定义的键,试图访问没定义的键

    dict4.get(5)  为  None

    dict4[5]出错

    查找键  //在序列里查找的是值

    4 in dict4  为  False

    清空字典

    dict4.clear()

    对于a={‘a’}  b=a,相当于内存是空,a和b只是这个内存地址的标签,如果让a={},则b还是{‘a’}。就需要用clear来清楚内存里的数据

    可以用id(dict4)查看内存地址

    同样dict5=dict4.copy()才是真正拷贝另一个字典

    dict4.pop(2)  //弹出2对应的值

    dict4.popitem()  //弹出一组键值,默认最后一个

    dict4.setdefault(2,''two)  //插入一个键值,在表中位置不定

    b={'4':'佛'}

    dict4.update(b)  将b的键对应的值修改

  • 相关阅读:
    剑指 Offer 48. 最长不含重复字符的子字符串
    剑指 Offer 47. 礼物的最大价值
    剑指 Offer 42. 连续子数组的最大和
    剑指 Offer 40. 最小的k个数
    剑指 Offer 39. 数组中出现次数超过一半的数字
    剑指 Offer 34. 二叉树中和为某一值的路径
    剑指 Offer 33. 二叉搜索树的后序遍历序列
    java类与对象(属性,方法)的使用
    java--基本数据类型的转换(强制转换)
    java--基本数据类型的转换(自动转换)
  • 原文地址:https://www.cnblogs.com/jdzhang1995/p/10247076.html
Copyright © 2020-2023  润新知