zoukankan      html  css  js  c++  java
  • 字典的定义及相关方法

    【PS:以下都是在ipython下操作的,ipython的安装配置和使用请参考我的另一篇文章http://www.cnblogs.com/smileyes/p/6833393.html

    1.定义字典

    为什么dict('a'=1)  dict(1='a')否报错而dict(a=1)确实正确的,其实是因为等于号左边其实就是设置一个变量名,变量名烦人命名规则是:

    必须以字母或下划线开头,且只能包含字母数字和下划线,所以只有a才是一个合格的变量名

    #注意键本身必须是不可变类型

    eg: 用列表做键会报错,用set,dict同样会报错,因为它们是可变类型

    eg: 用元组则不会,当然用str,num等也是可以的,因为它们是不可变类型

    2.字典的方法

    #----------增/改---------------------

    #方法一: fromkeys--基于可迭代对象创建字典

    查看帮助文档

    如果是在ide中使用命令: help(dict.setdefault)

    ipython中使用: dict.setdefault?

    #方法二: setdeault 添加键值对

    """

    k--key必须是不可变对象; d--value,不传则默认value=None

    如果k在字典键中,则不做任何处理

    k不在字典中,则增加一个键值对,key=k,value=d

    """

    方法三: update--增加键值对,或者更新键对应的值

    只能传递一个参数,参数类型是字典,

    dict_a.update(dict_b)

    遍历dict_b的键值对,如果键已经在dict_a中则将dict_b中键对应的值更新到dict_a中;

    键不在dict_a中则添加键值对到dict_a中

     方法四: 添加键值对或更新键对应的值

     #---------------------删---------------------------

    方法一: pop--根据键删除键值对

    k--key ,d--value

    如果key不存在,则必须传递d,返回d; 否则异常

    如果key存在会从字典中删除该键值对,返回value

    # 方法二:  popitems --随机删除键值对

    # 方法三: clear--清空字典,删除所有的键值对

    #--------------------查---------------------

    #方法一: get--根据键获取值

    方法二: 还是根据键获取值

    方法三: 获取键列表,值列表,和键值对列表

  • 相关阅读:
    cron表达式
    特殊二叉树和平衡二叉树和树的遍历
    进阶之常见算法和算法题
    原码,反码,补码、移码
    PostgreSQL 大小写问题 一键修改表名、字段名为小写
    ImportError: cannot import name 'PackageFinder' from 'pip._internal.index'
    安装pl/sql developer(内附下载地址)
    oracle plsql的结构
    oracle数据库基本操作
    java的高并发IO原理,阻塞BIO同步非阻塞NIO,异步非阻塞AIO
  • 原文地址:https://www.cnblogs.com/smileyes/p/7004466.html
Copyright © 2011-2022 走看看