zoukankan      html  css  js  c++  java
  • Python学习杂记_6_字典常用操作

    字典操作

    字典是由一对花括号括起来的一组“键值对”,每个键值对就是字典的一个元素,元素在字典中是无序的,常见操作如下:

    info = {

        'name':'xiaoming',

        'sex':'nan',

        'age':20,

        'id':1,

    }

    print(info['id'])                    # 通过key取值

    print(info['addr'])                # 通过key取值

    print(info.get('id'))              # 通过key取值

    print(info.get('addr'))          # 通过key取值

    #用中括号取值和get方法取值的区别 ,get方法获取不到key的时候

    #不会报错,中括号取值找不到key会报错,所以get方法更常用

    #get方法还可以多传一个参数,如果get不到key的话,那么返回这个参数值。

    #如果不写的话,默认get不到返回None

    info['addr'] = 'Beijing'                             #给字典新增一个键值对

    info.setdefault('phone',13811111)           #给字典新增一个键值对

    info['id'] = 7

    #在有这个key的情况下那就是修改这个key的value

    #没有这个key的话,就是新增

    #字典是无序的

    del info['addr']          #删除字典的一个指定元素(键值对)

    info.pop('addr')         #删除字典的一个指定元素(键值对),

    #pop删除的时候必须得指定key,pop方法会返回删除的key对应的value

    info.popitem()           #随机删除一个元素

    info.clear()                #清空字典

     

    例子:

    all  = {

        'car':

            {

                'color':['red','yellow','black'],

                'moeny':1111111,

                'pailiang':"2.5L",

                'name':"BMW"

            } ,

        'car1':

            {

                'color':['red','yellow','black'],

                'moeny':1111111,

                'pailiang':"2.5L",

                'country':"china"

            },

        'car2':

            {

                'color':['red','yellow','black'],

                'moeny':1111111,

                'pailiang':"2.5L"

            }

    }

    print(all)

    all.get('car').get('color')[1] = 'Orange'          # 把car的颜色改成Orange

    print(all)

    all['car']['color'][1]='Blue'                            # 把car的颜色改成Blue

    print(all)

    print(all.keys())         #获取该字典的所有key(最外层字典的,如果内又嵌套了字典则不管)

    print(all.values())      #获取该字典所有的value

    print(all.items())       #获取字典的key和value,循环的时候用

    #直接循环字典循环的是字典的key,如果想循环的时候同时获取到key和value

    #那么就要用.items()方法

    #以上这一组方法不论取出字典的keys,values 还是结items返回的结果都是字典特定的类型你可以用打印tpye()方法来查看,不能用in判断某个字符串是否在这些返回结果里。

    下面这种方法可以把一个字串转换成字典:

    eval(字符串)

    注意:被转换的字符串一定要符合字典的格式,比如 "{'iPhone':{'id':1,'price':5500},'iPad':{'id':2,'price':2000}}", 这样的字符串就可以用eval()方法转换成字典。

  • 相关阅读:
    CMDXP.CMD命令大全
    ASP.NET 页生命周期概述
    使用 ASP.NET 2.0提供的WebResource管理资源
    软件包管理 之 Fedora / Redhat 软件包管理指南
    开源代码分析研究 之 BugNet (2008年1月14日更新 第一章BugNet 简介 已完成)
    软件包管理 之 如何编译安装源码包软件
    硬件管理 之 Linux 硬件管理的基础知识
    软件包管理 之 fedorarpmdevtools 工具介绍
    软件包管理 之 Fedora/Redhat 在线安装更新软件包,yum 篇 ── 给新手指南
    系统引导管理 之 系统引导过程及硬盘分区结构论述
  • 原文地址:https://www.cnblogs.com/houzhizhe/p/6890743.html
Copyright © 2011-2022 走看看