zoukankan      html  css  js  c++  java
  • 从零开始的Python学习Episode 5——字典

    字典

      字典是另一种可变容器模型,且可存储任意类型对象。

    一、添加

    (1)直接添加

    dict={'name':'smilepup'}
    dict['age']=20
    dict['name']='piggy'
    print(dict)
    #输出{'name': 'piggy', 'age': 20}

    若输入的键存在,就把键对应的值更新为新的值。

    若输入的键不存在,就把输入的键值对添加进字典。

    (2)setdefault()方法

    dict={'name':'smilepup'}
    a = dict.setdefault("age",20)
    b = dict.setdefault("name",'piggy')
    print(dict)
    print(a)
    print(b)
    #输出
    #{'name': 'smilepup', 'age': 20}
    #20
    #smilepup

      若输入的键存在,不改动,并返回键对应的已有值。

      若输入的键不存在,就把输入的键值对添加进字典,并返回新添加的值。

    二、查找

    (1)根据键来查找对应的值

    dict={'name':'smilepup'}
    print(dict['name'])
    #输出smilepup
    

      若输入的键不存在会报错。

    (2)get() 方法

    dict={'name':'smilepup'}
    print(dict.get('name'))
    print(dict.get('age'))
    #输出
    #smilepup
    #None
    

      若输入的键存在,并返回键对应的值。

      若输入的键不存在,就返回None。

    (2)查找所有的键

    dict={'name':'smilepup','age':20}
    print(list(dict.keys()))
    #输出['name', 'age']
    

      返回一个dict_keys类型的值,表示字典中所有的键。若要使用这些键,可以把它转换为列表。

    (2)查找所有的值

    dict={'name':'smilepup','age':20}
    print(list(dict.values()))
    #输出['smilepup', 20]
    

      与上同理。

    (3)查找所有的键值对

    dict={'name':'smilepup','age':20}
    print(list(dict.items()))
    #输出[('name', 'smilepup'), ('age', 20)]
    

      与上同理

    三、修改

    (1)直接法

    dict={'name':'smilepup','age':20}
    dict['age'] = 21
    print(dict)
    #输出{'name': 'smilepup', 'age': 21}
    

    (2)update()方法

    dict={'name':'smilepup','age':20}
    dict2 = {'gender':'male','age':'21'}
    dict.update(dict2)
    print(dict)
    #输出{'name': 'smilepup', 'age': '21', 'gender': 'male'}
    

      创建一个新的字典来存信息,然后对原有字典进行更新,有点像列表的extend()。

    要注意的是:若有键已存在,则修改更新已有键对应的值;若键不存在,则添加新的键值对。

    四、删除

    (1)del 操作

    dict={'name':'smilepup','age':20,'gender':'male'}
    del dict['name']
    print(dict)
    #输出{'age': 20, 'gender': 'male'}
    

     删除所选键的键值对。

    (2)clear()方法

    dict={'name':'smilepup','age':20,'gender':'male'}
    dict.clear()
    print(dict)
    #输出{}
    

      清空字典,留下一个空字典。

    (3)pop()方法

    dict={'name':'smilepup','age':20,'gender':'male'}
    ret = dict.pop('age')
    print(dict)
    print(ret)
    #输出
    #{'name': 'smilepup', 'gender': 'male'}
    #20
    

      删除所选键的键值对,并返回已删除键值对的值。

    (4)popitem() 方法

    dict={'name':'smilepup','age':20,'gender':'male'}
    ret = dict.popitem()
    print(dict)
    print(ret)
    #输出
    #{'name': 'smilepup', 'age': 20}
    #('gender', 'male')
    

      随机删除一个键值对,并已元组的方式返回所删除的键值对。

    五、用for循环遍历字典

    方法一:

    dict={'name':'smilepup','age':20,'gender':'male'}
    for i in dict:
        print(i, dict[i])
    #输出
    #name smilepup
    #age 20
    #gender male
    

    方法二:

    dict={'name':'smilepup','age':20,'gender':'male'}
    for i,v in dict.items():
         print(i,v)
    #输出
    #name smilepup
    #age 20
    #gender male
  • 相关阅读:
    python中的有趣用法
    python计算程序运行时间
    python OptionParser模块
    优酷界面全新改版
    python数值计算模块NumPy scipy安装
    IOS开发-通知与消息机制
    四川大学线下编程比赛第一题:数字填充
    矩形旋转碰撞,OBB方向包围盒算法实现
    【Cocos2d-x 粒子系统】火球用手指飞起来
    它们的定义AlertDialog(二)
  • 原文地址:https://www.cnblogs.com/smilepup-hhr/p/9678487.html
Copyright © 2011-2022 走看看