从字典中获取一个值
问题
你需要从字典中获得一个值,不要处理在字典里找不到你所需要的键值的异常。
那就是字典的get方法。 如果你有一个字典
d = {'key':'value'}
在一个异常安全的方法中,你能够写一个从d中提取‘key’的值的测试
if d.has_key('key'): # or, in Python 2.2 or later: if 'key' in d:
print d['key']
else:
print 'not found'
然而有一个更简单的方法
print
d.get('key', 'not found')
print d.get('key', 'not found')
讨论
想从一个字典获得一个值,但是首先要确信这个值是否在这个字典里?使用简单有效的get方法。
如果你试着用象d[x]
那样的语法来获得一个值,并且x的值不是字典d的键值, 你的尝试将抛出一个KeyError异常。 这个是经常有用的。如果你期望x的值是d中的一个键值,一个异常是通知你犯错了的正确途径。(那就是说,你需要调试你的程序了)
然而,关于它,你经常需要更多的假设:直到你知道x的值或者是或者不是d中的一个键值。在这种情况下,忘掉has_key
方法或者try/except语句。 取而代之的,使用get方法。如果你调用d.get(x)
,没有异常被抛出。如果x是d的一个键值,你得到d[x]。如果不是,你得到None(你能检查或者传播它)。 当x不是d的键值的时候,如果None不是你想要的,调用d.get(x, somethingelse)
来替代。在这种情况下,如果x不是一个键值。你将得到somethingelse的值
Get是简单,有效的机制,python的文档很好的解释了它。但是不知道它的人的数量令人惊讶。当抽取REQUEST字典的一些值的时候,这个惯用方法在zope中也是相当普遍的。
分享到:
相关推荐
`rpcsvc-proto-1.4.tar.gz`是一个源代码压缩包,通常在Linux或类Unix系统中使用。`tar.gz`是一种常见的文件打包和压缩格式,由`tar`命令用于打包多个文件和目录,然后使用`gzip`进行压缩,以减小存储空间。在这个...
统信系统UOS资源包cockpit-389-ds_1.4.0.21-1_all.deb,python3-lib389_1.4.0.21-1_all.deb,389-ds_1.4.0.21-1_all.deb 资源列表: 389-ds_1.4.0.21-1_all.deb python3-lib389_1.4.0.21-1_all.deb cockpit-389-ds_...
gamin-python-0.1.7-1.4.EL4.i386.rpm
而我们今天要探讨的是一个与Pandas相关的库——panda-client-1.4.89,这是一个针对Pandas的扩展,旨在增强其功能和性能,特别适用于后端开发中对大规模数据集的处理。 Pandas库的核心是DataFrame对象,它是一个二维...
标题中的“Python库 | mt-940-1.4.tar.gz”暗示了这是一个与Python相关的库,且已经打包成`.tar.gz`格式的压缩文件。`.tar.gz`是Linux和Unix环境中常用的压缩方式,它首先使用`tar`命令将多个文件或目录打包成一个...
在给定的资源“peachapisec-slack-1.4.41.tar.gz”中,我们可以看到这是一款针对Python开发的后端库,主要用于与Slack API交互。 首先,让我们来了解一下Python。Python是一种高级编程语言,以其简洁明了的语法和...
总结,MetaQ-server-1.4.6.2版本提供了一个完整的消息中间件解决方案,包括服务端、客户端和相应的文档支持。通过使用MetaQ,开发者可以构建出高效、可靠的分布式系统,同时利用Javadoc文档来加速开发过程,确保代码...
标题中的"Python库 | kero-0.4.1.4.tar.gz"指的是一个名为"Kero"的Python库的特定版本,版本号为0.4.1.4,其源代码以tar.gz格式打包。在软件开发中,库是一组预编写的功能,可以帮助开发者快速构建应用程序,减少...
资源分类:Python库 所属语言:Python 资源全名:seldon-deploy-sdk-1.4.1.2.tar.gz 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
离线安装包,亲测可用
资源分类:Python库 所属语言:Python 资源全名:xiangqi-setup-1.4.tar.gz 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
ActivePython-2.7.1.4-win32 重新包装之后的Python,有一些比较方便的功能,比如添加组件之类的
这种爬虫技术是基于网络机器人(Web Robot)的概念,它们遵循一定的规则在网络中自动浏览和收集数据,而"bot-package-1.4"则提供了一个方便的工具集,使得开发者无需从零开始编写爬虫代码。 【标签】包括“bot”、...
资源分类:Python库 所属语言:Python 资源全名:django-todo-1.4.tar.gz 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
资源分类:Python库 所属语言:Python 资源全名:docker-replay-1.4.tar.gz 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
离线安装包,亲测可用
官方离线安装包,测试可用。使用rpm -ivh [rpm完整包名] 进行安装
离线安装包,亲测可用
资源分类:Python库 所属语言:Python 资源全名:schema-salad-1.4.20160108200836.tar.gz 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
资源分类:Python库 所属语言:Python 资源全名:panda-client-1.4.80.tar.gz 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059