1. 字典是无序的,多次print输出的结果不一样。
  2. 字典的key可以是数字、字符串、元组、布尔值(True为1,False为0,不可以和其他key值重复);列表和字典不能作为key。
  3. 字典的value可以是任何类型。
  4. 字典支持del方法删除。
  5. 字典支持for循环,是可迭代对象,不支持while循环。
  6. 输出字典所有的key:
    1. for item in info.keys():
    2. print(item)
  7. 输出字典所有的值:
    1. for item in info.values():
    2. print(item)
  8. 输出字典所有的键值对:
    1. for k, v in info.items():
    2. print(k, v)
  9. info.clear( )            | 清空字典
  10. info.copy( )            |浅拷贝
  11. dict.fromkeys( *args, **kwargs )           |这是一种静态方法@staticmethod。根据序列创建字典,并给其指定统一值。 像此类静态方法调用时,用类名.方法名就可以。
    前面带两个*时,表示这里可以用name=“…”的形式穿入参数,也可以直接传入字典。
    1. >>> new_dict = dict.fromkeys(['k1',123,''],123)
    2. >>> print(new_dict)
    3. {'k1': 123, 123: 123, '': 123}
  12. info.get( )         |get能直接根据索引号来获取该索引号对应的值,和直接用info['k1']不同的是,当输入的索引号不存在时,info['K1']会报错,但是get会输出None,并且可以设置当索引号不存在时应该输出的默认值。
    1. >>> info = {'K1':123,'k2':890}
    2. >>> v = info.get('k1111',222)
    3. >>> print (v)
    4. 222
  13. info.pop( )         |删除值并且得到删掉的值。
    1. >>> info = {'K1':123,'k2':890}
    2. >>> v = info.pop('K1')
    3. >>> print (info, v)
    4. ({'k2': 890}, 123)
  14. info.popitem( )      |此方法不带参数,是指随即删除字典里的一个键值对,并获取删掉的键值对的值。
    1. >>> info = {'K1':123,'k2':890}
    2. >>> k, v = info.popitem()
    3. >>> print(info, k, v)
    4. ({'K1': 123}, 'k2', 890) #随机删掉了K2键值对
  15. info.setdefault( )      |当setdefault参数中设置的键在字典中存在时,不作修改,并且获得该键在字典中对应的值,当setdefault参数的键在字典中不存在时,则把setdefault设置的键值对添加到字典中,并且获得该键对应的值。
    1. >>> info = {'K1':123,'k2':890}
    2. >>> v = info.setdefault('k11111',666) #这是当参数的键在字典中不存在时,结果把参数设置的键值对添加到了字典中,并且返回了该键对应的值。
    3. >>> print(info, v)
    4. ({'k2': 890, 'K1': 123, 'k11111': 666}, 666)
  16. info.update( )        |更新字典的内容,对原来存在的键覆盖其值,对原来不存在的键值对添加到字典中。
    1. >>> info = {'k1':123,'k2':890}
    2. >>> info.update({'k1': 11111,'k3':'hdjkdl'}) #这里参数传入的是一个字典
    3. >>> print(info)
    4. {'k3': 'hdjkdl', 'k2': 890, 'k1': 11111}
    1. >>> info = {'k1':123,'k2':890}
    2. >>> info.update(k1=11111,k3='hdjkdl') #或者也可以以这种方式传入参数和值
    3. >>> print(info)
    4. {'k3': 'hdjkdl', 'k2': 890, 'k1': 11111}
  17. 字典默认for循环时,循环的是key值,不是value
    1. >>> dic = {'k1':'v1'}
    2. >>> 'k1' in dic #键是True
    3. True
    1. >>> dic = {'k1':'v1'}
    2. >>> 'v1' in dic #值是False
    3. False
  18. 布尔值
    转换为布尔值:bool( )
    布尔值为False的类型: None, " ", ( ), { }, 0  ,其他都为真

Python 字典dict相关知识的更多相关文章

  1. python字典dict的增、删、改、查操作

    ## python字典dict的增.删.改.查操作dict = {'age': 18, 'name': 'jin', 'sex': 'male', }#增# dict['heigh'] = 185 # ...

  2. Python 字典 dict() 函数

    描述 Python 字典 dict() 函数用于创建一个新的字典,用法与 Pyhon 字典 update() 方法相似. 语法 dict() 函数函数语法: dict(key/value) 参数说明: ...

  3. 'dict_values' object does not support indexing, Python字典dict中由value查key

    Python字典dict中由value查key 众所周知,字典dict最大的好处就是查找或插入的速度极快,并且不想列表list一样,随着key的增加越来越复杂.但是dict需要占用较大的内存空间,换句 ...

  4. python 字典dict - python基础入门(15)

    前面的课程讲解了字符串str/列表list/元组tuple,还有最后一种比较重要的数据类型也需要介绍介绍,那就是python字典,俗称:dict. python中的字典可与字符串/列表/元组不同,因为 ...

  5. python全栈 字典数据类型相关知识及操作

    python 全栈开发 一.字典 1. 字典的概念: 字典 : dict 用 {} 来表示,   键位值数据. { key , value }    具有唯一性. 键:都必须是可哈希的     不可变 ...

  6. Python字典(dict)使用技巧

    字典dict是Python中使用频率非常高的数据结构,关于它的使用,也有许多的小技巧,掌握这些小技巧会让你高效地的使用dict,也会让你的代码更简洁. 1.默认值 假设name_for_userid存 ...

  7. python 字典 dict 该注意的一些操作

    在用python处理dict 的时候,有几个该注意的地方,这里跟大家提一下: 1)操作dict 时,尽量少产生新的列表对象.比如: 遍历dict的时候,如果用 dic = {"a" ...

  8. Python中元组相关知识

    下面给大家介绍以下元组的相关知识: ·元组可以看成是一个不可更改的list 1.元组的创建 # 创建空元祖 t = () print(type(t)) # 创建只有一个值的元组 # 观察可知元组中如果 ...

  9. Python面对对象相关知识总结

    很有一段时间没使用python了,前两天研究微信公众号使用了下python的django服务,感觉好多知识都遗忘了,毕竟之前没有深入的实践,长期不使用就忘得快.本博的主要目的就是对Python中我认为 ...

随机推荐

  1. os.remove异常处理

    这种情况,正反斜杠都没问题.(windows环境下) 这种情况会出现下列异常 对于目录的形式,把反斜杠改成正斜杠就好了

  2. y

    switch(update_state) { : switch(num){ : window.progressn=num $('#h_progress_bar .ui-progress').anima ...

  3. spring xml配置注入改为手动注入过程

    项目中需要使用MQ组件来接受消息,但是有的时候,在使用的时候,并不能满足spring注入的条件,无法注入.例如 在jfinal的config的afterJFinalStart中,由于jfinal集成s ...

  4. 开启BBR

    BBR 目的是要尽量跑满带宽, 并且尽量不要有排队的情况, 效果并不比速锐差Linux kernel 4.9+ 已支持 tcp_bbr 下面简单讲述基于KVM架构VPS如何开启附:OpenVZ 架构V ...

  5. 2 - Binary Search & LogN Algorithm - Apr 18

    38. Search a 2D Matrix II https://www.lintcode.com/problem/search-a-2d-matrix-ii/description?_from=l ...

  6. 如何增加亚马逊listing多个类目节点

    流量是电商销售的必要因素,可以说,任何成功的电商平台都离不开流量.亚马逊listing优化做得好,不仅能提高产品的曝光率,还能提升转换率,而好的类目可以吸引大的流量.帮你快速爬升. 首先我们来了解一下 ...

  7. 基于iview 封装一个vue 表格分页组件

    iview 是一个支持中大型项目的后台管理系统ui组件库,相对于一个后台管理系统的表格来说分页十分常见的 iview是一个基于vue的ui组件库,其中的iview-admin是一个已经为我们搭好的后天 ...

  8. windows 安装xadmin

    1.访问github :https://github.com/sshwsfc/xadmin 2.新建README.rst 并替换到下载的zip文件中 3.cmd下,进入虚拟环境使用pip instal ...

  9. VS2013 中 CString类型转换为LPCSTR类型

    HWND hWnd = ::FindWindow(NULL, L"XXXXXXX"); if (hWnd != NULL) { DWORD dwReadBytes; unsigne ...

  10. java 动态增/减集合元素

    1. 简介 有时候需要在集合遍历过程中进行增/删,下面介绍几种正确的操作方式. 2. 示例 例如有如下集合[1, 2, 2, 3, 5],需要删除被2整除的元素. import java.util.* ...