您可以使用python ABCs定义自己的字典对象,该对象提供了用于定义abstract base classes的基础结构.然后根据需要重载python字典对象的pop属性:

from collections import Mapping

class MyDict(Mapping):

def __init__(self, *args, **kwargs):

self.update(dict(*args, **kwargs))

def __setitem__(self, key, item):

self.__dict__[key] = item

def __getitem__(self, key):

return self.__dict__[key]

def __delitem__(self, key):

del self.__dict__[key]

def pop(self, k, d=None):

return k,self.__dict__.pop(k, d)

def update(self, *args, **kwargs):

return self.__dict__.update(*args, **kwargs)

def __iter__(self):

return iter(self.__dict__)

def __len__(self):

return len(self.__dict__)

def __repr__(self):

return repr(self.__dict__)

演示:

d=MyDict()

d['a']=1

d['b']=5

d['c']=8

print d

{'a': 1, 'c': 8, 'b': 5}

print d.pop(min(d, key=d.get))

('a', 1)

print d

{'c': 8, 'b': 5}

注意:如@chepner在注释中建议的更好的选择,您可以覆盖popitem,后者已返回键/值对.

python为什么无法保存然后弹跳出来_python-从字典中弹出键,值对的整洁方法?相关推荐

  1. python获取字典的值_python取出字典中的所有值的两种方法

    原博文 2018-06-19 18:29 − 方法一: spam = {'A':123 ,'B':345,'C':345 } for k,v in spam.items(): print(k,v) 方 ...

  2. python中字典的键是唯一的吗_python 零散记录(四) 强调字典中的键值唯一性 字典的一些常用方法...

    dict中键只有在值和类型完全相同的时候才视为一个键: mydict = {1:1,'':1} #此时mydict[1] 与 mydict['1']是两个不同的键值 dict的一些常用方法: clea ...

  3. python中字典按键或键值排序

    字典排序 在程序中使用字典进行数据信息统计时,由于字典是无序的所以打印字典时内容也是无序的.因此,为了使统计得到的结果更方便查看需要进行排序.Python中字典的排序分为按"键"排 ...

  4. python中字典按键或键值排序_[宜配屋]听图阁

    字典排序 在程序中使用字典进行数据信息统计时,由于字典是无序的所以打印字典时内容也是无序的.因此,为了使统计得到的结果更方便查看需要进行排序.Python中字典的排序分为按"键"排 ...

  5. python列表中的字典如何添加键值对_在Python中将键值对添加到字典中

    Python字典是键值对的无序集合.在本教程中,我们将看到如何将新的键值对添加到已经定义的字典中.以下是我们可以使用的两种方法. 将新键分配为下标 我们通过使用新键作为下标并为其分配值来向字典添加新元 ...

  6. python修改列表中字典内的值_python修改字典内key对应值的方法

    python学习笔记:字典 python版本:Python 2.6.6 系统环境:CentOS release 6.2 x86_64 本文参考了互联网上前辈的一些文章 一.字典是python中最灵活的 ...

  7. python一次删除多个键值对_Python单击:多个键值对参数

    我将Python Click库用于我的命令行界面.我想有一个需要多个键值对的命令.我在api上很灵活.例如 my_cli my_command FOO=1 BAR=2 或者可能 my_cli my_c ...

  8. python 字典 删除指定_python删除字典中的某个值

    Q1:python中字典不用了怎么删除 如果你要删除整个变量,python里面垃圾是自动收集的,不用你太去关心.一定要用,就del 变量名. 如果你是要修改一个字典的内容,比如从里面删除一个元素,一般 ...

  9. python取出字典的某个键_python取出字典的某个键

    python 字典怎么取key对应的值 d={'a':1,'b':2,'c':3}for i in d.keys():print(i,d[i]) python字典,如何查找值中包含指定字符串的键 说明 ...

  10. python字典嵌套字典构造_python实现字典嵌套列表取值

    python实现字典嵌套列表取值 如下所示: dict={'log_id': 5891599090191187877, 'result_num': 1, 'result': [{'probabilit ...

最新文章

  1. Java学习笔记(二一)——Java 泛型
  2. java convexhull_图像上划凸多边形(convexHull()函数)
  3. centos7安装svn服务
  4. [linux]cp和mv对文件和链接影响的区别
  5. 获取iOS 设备上崩溃日志 (Crash Log)的方法
  6. php如何生成本地文档,php如何生成word文件
  7. Ubuntu18.04 安装 Idea 2018.2
  8. 2021-2027全球及中国油田钻机行业研究及十四五规划分析报告
  9. 人纪--针灸---------12.7开始
  10. 测相伪距观测方程、线性组合
  11. 苹果税要崩溃了!又一国家做出判决:iOS必须开放第三方支付
  12. 最新前端开发面试笔试题及答案---图片(面试题系列持续更新中)(4)
  13. PyQtGraph库的部分踩坑记录
  14. 植物大战僵尸:无冷却分析方法
  15. html语言下上标对齐,HTML 标记语言全面详细解 一天学会
  16. python invoking c++
  17. 什么是XenServer
  18. Maven中的打胖包瘦包
  19. foxmail和outlook2007邮件如何互相导入?
  20. GDB调试错误显示没有文件,退出代码127

热门文章

  1. CityMaker SDK与三维GIS城市
  2. CentOS和Ubuntu哪个好?
  3. Oracle中 ORA-12704:字符集不匹配
  4. limit where group by having select
  5. 使用web gis 加载显示arcgis for server 发布出来的地图,并提供查询标记显示属性功能...
  6. 嵌入式软件设计第九次
  7. hdu 4790 Just Random (2013成都J题) 数学思路题 容斥
  8. 移动端——论使用图片撑出模拟背景所带来的好处(主要解决图片之上是一些动态变化的内容,图片的效果难以使用程序来实现)...
  9. 一篇关于实体链接的小综述
  10. word2vec词向量建立