Dict的功能介绍

1. 字典的两种函数(方法)

1. 字典的内置函数

  1. 包含关系

    格式:x.__contains__(key)等同于key in x
    例如:dic = {'ab':23,'cd':34,}
    print(dic.__contains__('ab'))
    >>> True
    返回值:bool
    #只能判断字典的键
  2. 删除字典指定键的键值对

    格式:x.__delitem__(key)等同于del x[key]
    例如:dic = {'ab':23,'cd':34,}
    dic.__delitem__('ab'))
    print(dic)
    >>> {'cd':34}
    返回值:None
    #直接修改原字典
  3. 判断两个字典是否相等

    格式:x.__eq__(y)等同于x==y
    例如:dic = {'ab':23,'cd':34,}
    print(dic.__eq__({}))
    >>> False
    返回值:bool
    #上述的y只能是字典
  4. 判断是否大于等于

    格式:x.__ge__(y)等同于x>=y
    返回值:bool
    #字典没有该方法
  5. 访问属性

    格式:x.__getattribut__(self,name)
    返回值:tuple
  6. 获取指定键的值

    格式:x.__getitem__(key)等同于x[key]
    例如:dic = {'ab':23,'cd':34,}
    print(dic.__getitem__('ab'))
    >>> 23
    返回值:object
  7. 判断是否大于

    格式:x.__gt__(y)等同于:x>y
    返回值:bool
    #字典没有该方法
  8. 构造方法

    格式:x.__init__(dict())
    例如:dic = {1:3,2:4,}
    dic.__init__(dict())
    print(dic)
    >>> {1: 3, 2: 4}
    返回值:None
  9. 迭代器

    格式:x.__iter__()等同于iter(x)
    返回值:迭代器
  10. 判断是否小于等

    格式:x.__le__(y)等同于x<=y
    返回值:bool
    #字典没有该方法
  11. 长度

    格式:x.__len__()等同于len(x)
    返回值:int
  12. 判断是否小于

    格式:x.__lt__(y)等同于x<y
    返回值:bool
    #字典没有该方法
  13. 判断是否不等于

    格式:x.__ne__(y)等同于x!=y
    返回值:bool
  14. 创建新字典

    格式:x.__new__(dict)
    例如:dic = {'a':3,'b':4,}
    print(dic.__new__(dict))
    >>> {}
    返回值:dict
  15. 内置转换方法

    格式:x.__repr__(self)
    返回值:dict
  16. 新增一对键值对或修改指定key的值

    格式:x.__setitem__(key,value)等同于x[key]=value
    例如:dic = {'a':3,'b':4,}
    dic.__setitem__('c',5)
    dic.__setitem__('c',9)
    print(dic)
    >>> {'b': 4, 'c': 9, 'a': 3}
    返回值:None
  17. 字典在内存中大小,转换为字节进行计算

    格式:x.__sizeof__()
    例如:dic1 = {'a':3,'b':4,}
    dic2 = {2:4}
    print(dic1.__sizeof__())
    >>> 264
    print(dic2.__sizeof__())
    >>> 264
    返回值:int
    #字典长度和内容的不同,不影响字典在内存中的大小。

2. 字典的常用函数

  1. 清空字典

    格式:x.clear()
    例如:dic = {'a':3,'b':4,}
    dic.clear()
    print(dic)
    >>> {}
    返回值:None
  2. 复制

    格式:x.copy()
    例如:dic = {'a':3,'b':4,}
    print(dic.copy())
    >>> {'a':3,'b':4}
    返回值:dict
  3. 新建字典并指定字典值

    格式:x.fromkeys(iterable,value=None)
    例如:dic = {'a':3,'b':4,}
    print(dic.fromkeys('cde'))
    >>> {'c':None,'d':None,'e':None}
    print(dic.fromkeys('de',12))
    >>> {'d':12,'e':12}
    返回值:dict
  4. 获取指定键的值

    格式:x.get(key)
    例如:dic = {'a':3,'b':4,}
    print(dic.get('a'))
    >>> 3
    返回值:object
  5. 获取字典所有的键值对

    格式:x.items()
    例如:dic = {'a':3,'b':4,}
    print(dic.items())
    >>> dict_items([('b', 4), ('a', 3)])
    返回值:list
    #把字典所有的键值对以列表的元祖的形式表示
  6. 获取字典所有的键

    格式:x.keys()
    例如:dic = {'a':3,'b':4,}
    print(dic.keys())
    >>> dict_keys(['b', 'a'])
    返回值:list
    #把字典所有的键以列表元素的形式表示
  7. 移除指定键的值

    格式:x.pop(key)
    例如:dic = {'a':3,'b':4,}
    print(dic.pop('a'))
    >>> 3
    返回值:object
    #删除原字典中指定键的值,并返回删除的值
  8. 随机删除键值对

    格式:x.popitem()
    例如:dic = {'a':3,'b':4,}
    print(dic.popitem())
    >>> {'a':3}
    返回值:tuple
    #随机删除一个键值对,并以元祖的形式返回删除的键值对
  9. 设置字典默认值

    格式:x.setdefault(key,value=None)
    例如:dic = {'a':3,'b':4,}
    print(dic.setdefault('c'))
    >>> None
    #没有设置值的默认值,则新增的键'c'默认值为None
    print(dic.setdefault('d',9))
    >>> 9
    #当设置默认值时,新增的键'd'的值则为设置的9,返回值则为设置的值9
    返回值:object
  10. 更新字典

    格式:x.update(y)
    例如:dic = {'a':3,'b':4,}
    dic.update({'c':1})
    print(dic)
    >>> {'a':3,'b':4,'c':1}
    返回值:None
    #在原字典的基础上再合并一个字典
  11. 获取字典所有的值

    格式:x.values()
    例如:dic = {'a':3,'b':4,}
    print(dic.values())
    >>> dict_values([4, 3])
    返回值:list
    #把字典所有的值以列表元素的形式表示

2. 字典的操作

1. 字典的基本操作

  1. 访问

    格式:dict[key]
    返回值:object
  2. 修改

    格式:dict[key] = value
    返回值:None
  3. 删除

    格式:del dict[key]
    返回值:None
  4. 添加

    格式:dict[key] = value
    返回值:None
    #添加和修改格式都一样,只是添加使用的是新的键,修改使用的是存在的键

2. 字典的遍历操作

使用for...in 遍历字典

   1. 不使用字典函数的遍历

        格式:for variable in dict:
使用variable
例如:dic = {'a':3,'b':5,}
for i in dic:
print(i)
>>> a
>>> b
返回值:字典的key
2. 使用函数key()遍历字典的键 格式:for variable in dict.keys():
使用variable
例如:dic = {'a':3,'b':5,}
for i in dic.keys():
print(i)
>>> a
>>> b
返回值:字典的key
#效果与省略函数keys()的效果一样
3. 使用函数values()遍历字典的值 格式:for variable in dict.values():
使用variable
例如:dic = {'a':3,'b':5,}
for i in dic.values():
print(i)
>>> 3
>>> 5
返回值:字典的values
4. 使用函数items()遍历字典的键值对 格式:for variable1,variable2 in dict.items():
使用variable1,variable2
例如:dic = {'a':3,'b':5,}
for i,j in dic.items():
print(i,j)
>>> a 3
>>> b 5
返回值:字典的键值对,两个变量分别对应字典的键和值

3. 字典的推导式

  1. 返回值为集合的推导式

    1.格式:{variable for variable in dict}
    例如:dic = {'a':3,'b':5,}
    print({i for i in dic})
    >>> {'a','b'}
    返回值:set
    #把字典所有的key,组建成一个集合
    2.格式:{variable for variable in dict.keys()}
    例如:dic = {'a':3,'b':5,}
    print({i for i in dic.keys()})
    >>> {'a','b'}
    返回值:set
    #把字典所有的key,组建成一个集合
    3.格式:{variable for variable in dict.values()}
    例如:dic = {'a':3,'b':5,}
    print({i for i in dic.values()})
    >>> {3,5}
    返回值:set
    #把字典所有的value,组建成一个集合

    注:字典推导式也可以有带判断和多字典的导式,这里不再一一举例。

  2. 返回值为字典的推导式

    格式:{variable2:variable1 for variable1,variable2 in dict.items()}
    例如:dic = {'a':3,'b':5,}
    print({v:k for k,v in dic.items()})
    >>> {3: 'a', 5: 'b'}
    返回值:dict
    #字典推导式把键和值互换
  3. 稍作修改的字典推导式

    格式:{variable2:(variable1+'*') for variable1,variable2 in dict.items()}
    例如:dic = {'a':3,'b':5,}
    print({v:(k+'*') for k,v in dic.items()})
    >>> {3: 'a*', 5: 'b*'}
    返回值:dict
    #字典推导式把键和值互换,并进行修改
  4. 多个字典推导式

    格式:{(k1+k2):(v1+v2) for k1,v1 in dict1.items() for k2,v2 in dict2.items()}
    例如:dict1 = {'a':3,'b':5,}
    dict2 = {'c':10,'d':20,}
    print({(k1+k2):(v1+v2) for k1,v1 in dict1.items() for k2,v2 in dict.items()})
    >>> {'ad': 23, 'bd': 25, 'ac': 13, 'bc': 15}
    返回值:dict
  5. 带判断条件的多字典推导式

    格式:{(k1*v2):(k2*v1) for k1,v1 in dict1.items() for k2,v2 in dict2.items() if 条件表达式}
    例如:dict1 = {'a':3,'b':5,}
    dict2 = {'c':10,'d':20,}
    print({(k1*v2):(k2*v1) for k1,v1 in dict1.items() for k2,v2 in dict.items() v1 <15 and v2 < 15})
    >>> {'bbbbbbbbbb': 'ccccc', 'aaaaaaaaaa': 'ccc'}
    返回值:dict

Python中dict的功能介绍的更多相关文章

  1. Python中list的功能介绍

    List的功能介绍 1. 列表的两种方法 1. 列表的内置方法 列表的相加 格式:x.__add__(y)等同于x+y 例如:list1 = [1,2,3] print(list1.__add__([ ...

  2. Python中set的功能介绍

    Set的功能介绍 1.集合的两种函数(方法) 1. 集合的内置函数 交集 格式:x.__and__(y)等同于x&y 例如:s1 = {'a',1,} s2 = {'b',1,} s3 = { ...

  3. Python中tuple的功能介绍

    Tuple的功能介绍 1. 元祖的两种方法 1. 元祖的内置方法 两个元祖的相加 格式:x.__add__(y)等同于x+y 例如:tu1 = (1,2,3,) print(tu1.__add__(( ...

  4. Python中dict详解

    from:http://www.cnblogs.com/yangyongzhi/archive/2012/09/17/2688326.html Python中dict详解 python3.0以上,pr ...

  5. python中multiprocessing.pool函数介绍_正在拉磨_新浪博客

    python中multiprocessing.pool函数介绍_正在拉磨_新浪博客     python中multiprocessing.pool函数介绍    (2010-06-10 03:46:5 ...

  6. laravel框架中超实用的功能介绍

    本篇文章给大家带来的内容是关于laravel框架中超实用的功能介绍,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 让lumen的dd() dump()像laravel一样优雅 1 c ...

  7. Docker 中的网络功能介绍 外部访问容器 容器互联 配置 DNS

    Docker 中的网络功能介绍 | Docker 从入门到实践 https://vuepress.mirror.docker-practice.com/network/ Docker 允许通过外部访问 ...

  8. python中int的功能简单介绍

    Int的功能介绍 1. 绝对值 x.__abs__()等同于abs(x) 2. 加法 x.__add__(y)等同于x+y 3. 与运算 x.__and__(y)等同于x&y 4. 布尔运算 ...

  9. python中的元类介绍

    类也是对象 在大多数编程语言中,类就是一组用来描述如何生成一个对象的代码段,在python中也是成立的. class ObjectCreator: pass my_object = ObjectCre ...

随机推荐

  1. 学习ASP.NET Core Razor 编程系列四——Asp.Net Core Razor列表模板页面

    学习ASP.NET Core Razor 编程系列目录 学习ASP.NET Core Razor 编程系列一 学习ASP.NET Core Razor 编程系列二——添加一个实体 学习ASP.NET ...

  2. 第5章 子网划分和CIDR

    第5章 子网划分和CIDR 划分网络 根据A类.B类或C类网络ID来识别网段具有一些局限性,主要是在网络级别之下不能对地址空间进行任何逻辑细分 如果一个IP是一个A类网络.数据报到达网关,然后传输到9 ...

  3. 多台linux主机之间建立免密通信

    多台linux主机之间设置免密通信 例:A 向 B设置免密通信 第一步 A生成密钥对 ssh-keygen -t rsa -t 指定秘钥的类型 rsa 秘钥类型 密钥目录:/root/.ssh/(如果 ...

  4. Linux进程管理:后台启动进程和任务管理命令

    一.为什么要使程序在后台执行 我们的应用有时候要运行时间很长,如:几个小时甚至几个星期,我们可以让程序在后台一直跑. 让程序在后台运行的好处有: 终端关机不影响后台进程的运行.(不会终端一关机或者网络 ...

  5. 使用java 打印日历

    package hangshu; /* * 打印从1900年到2.year年的日历 */ import java.util.Scanner; public class Calender { publi ...

  6. python/零起点(一、列表)

    python/零起点(一.列表) 列表(list)list()可以强行转换数据类型为列表,列表是可迭代对象 列表是有序的,且列表是可变的数据类型 列表中的元素可以是(字符串.整型.元祖.列表.字典.集 ...

  7. tkinter的冷却技能

    validatecommand=(f,s1,s2,s3) f就是冷却后的验证函数名,s1,s2,s3这些时额外的选项,这些选项会作为参数依次传给f函数. register()冷却作用:register ...

  8. Linux64位程序中的漏洞利用

    之前在栈溢出漏洞的利用和缓解中介绍了栈溢出漏洞和一些常见的漏洞缓解 技术的原理和绕过方法, 不过当时主要针对32位程序(ELF32). 秉承着能用就不改的态度, IPv4还依然是互联网的主导, 更何况 ...

  9. [LeetCode] Range Addition II 范围相加之二

    Given an m * n matrix M initialized with all 0's and several update operations. Operations are repre ...

  10. 实验吧_Guess Next Session&Once More(代码审计)

    Guess Next Session 看题目提示,是一道代码审计: <?php session_start(); if (isset ($_GET['password'])) { if ($_G ...