`

python 基本方法1

阅读更多
------------------------清除------------------------
clear()方法,将字典所有内容清除:
>>> d = {'age' : 12, 'name' : 'bob'}
>>> d
{'age': 12, 'name': 'bob'}
>>> d.clear()
>>> d
{}

有人可能会问为什么不直接d={}?
看下面的例子:
>>> d = {'age' : 12, 'name' : 'bob'}
>>> x = d
>>> d = {}
>>> x
{'age': 12, 'name': 'bob'}

再看下面:
>>> d = {'age' : 12, 'name' : 'bob'}
>>> x = d
>>> d.clear()
>>> x
{}

所以如果要真正清除一个字典要用clear

------------------------复制------------------------
>>> d = {'age' : 12, 'name' : 'bob'}
>>> y = d.copy()
>>> y['age'] = 32
>>> d
{'age': 12, 'name': 'bob'}
>>> y
{'age': 32, 'name': 'bob'}
复制后 y 的修改与 d 无关
但如果一个字典中有引用类型,如list,复制只会复制其引用而不会复制其值:
>>> d = {'names': ['bob', 'sam']}
>>> y = d.copy()
>>> y['names'][0] = 'jack'
>>> y
{'names': ['jack', 'sam']}
>>> d
{'names': ['jack', 'sam']}
如果要克服这个困难,那就必须用“深复制“:
>>> from copy import deepcopy
>>> d = {'names': ['bob', 'sam']}
>>> y = deepcopy(d)
>>> y['names'][0] = 'jack'
>>> d
{'names': ['bob', 'sam']}
>>> y
{'names': ['jack', 'sam']}

------------------------get------------------------
先看一个例子:
>>> d = {}
>>> d['name']
Traceback (most recent call last):

File "<stdin>", line 1, in <module>
KeyError: 'name'
>>> print d.get('name')
None
>>> d.get('name', 'N/A')
'N/A'
如果用索引直接访问一个不存在的值,Python会报错,但是如果用get方法会返回一个默认值,通过传入第二个参数来自定义一个默认值

------------------------键是否存在?------------------------
有两种方法来查询:
>>> d = {'age' : 12, 'name' : 'bob'}
>>> 'age' in d
True
>>> d.has_key('age')
True
可以用in关键字也可以通过has_key方法

------------------------键和值------------------------
将键、值、键值转换成List
>>> d = {'age' : 12, 'name' : 'bob'}
>>> d.keys()
['age', 'name']
>>> d.values()
[12, 'bob']
>>> d.items()
[('age', 12), ('name', 'bob')]

------------------------设默认值------------------------
当你要确保一个字典中确保有某个键时,可以用setdefault:
>>> d = {}
>>> d.setdefault('name', 'N/A')
'N/A'
>>> d
{'name': 'N/A'}
>>> d['name'] = 'bob'
>>> d.setdefault('name', 'N/A')
'bob'
>>> d
{'name': 'bob'}
setdefault和get十分类似,都返回查询的值,但是setdefault将默认值加入字典中。
分享到:
评论

相关推荐

    python基本程序方法

    在“python基本程序方法”这个主题中,我们将深入探讨五个关键部分:基本程序设计方法、理解问题的计算部分、温度转换程序实例、库的使用以及蟒蛇绘制程序。 **基本程序设计方法**是学习任何编程语言的起点。它包括...

    Python基本语法.docx

    Python是一种高级编程语言,以其简洁明了的语法和强大的功能而受到广泛的欢迎。在Python中,代码的可读性被视...Python的这些基本语法构成了其强大的编程基础,使得开发者能够快速、高效地编写出易于理解和维护的代码。

    Python程序设计现代方法习题及答案.pdf

    在习题 9 和 10 中,我们学习了程序开发的各个阶段和程序编写的基本方法。 Python 函数和结构 在第 2 章中,我们学习了 Python 的函数和结构。我们学习了如何使用函数来封装代码、如何使用结构来组织代码。 在...

    Python操作Oracle数据库的简单方法和封装类实例

    最近工作有接触到Oracle,发现很多地方用Python脚本去做的话,应该会方便很多,所以就想先学习下Python操作Oracle的基本方法。 考虑到Oracle的使用还有一个OracleClient的NetConfig的存在,我觉得连接起来就应该不是...

    计算机二级Python教程Python语言程序设 Python基础入门教程-第2章-Python语言基本语法元素共46页.ppt

    第1章-程序设计基本方法 共45页.pptx 第2章-Python语言基本语法元素 共46页.ppt 第3章-程序的控制结构 共53页.ppt 第4章-组合数据类型 共57页.pptx 第5章-函数和代码复用 共40页.ppt 第6章-文件和数据格式化 共54页....

    Python 魔方方法总结

    该文档总结了Python魔方基本常用方法,与大家共享,欢迎下载。

    Python基本语法

    Python基本语法知识点概览: 1. 变量赋值和基本数据类型 Python中,赋值操作是通过等号“=”实现的,例如x=3将数字3赋值给变量x。变量赋值后,可以通过print函数打印变量的值。使用type函数可以返回变量的数据类型...

    Python电子教案1-2-程序设计基本方法.ppt

    在"Python电子教案1-2-程序设计基本方法"中,我们首先会接触到Python开发环境的配置和程序的启动方法。 1. Python开发环境配置: 要开始Python编程,你需要先访问Python的官方网站www.python.org/downloads/下载...

    python生成1行四列全2矩阵的方法

    您可能感兴趣的文章:python+numpy实现的基本矩阵操作示例numpy实现合并多维矩阵、list的扩展方法python中返回矩阵的行列方法Python 使用Numpy对矩阵进行转置的方法Python+numpy实现矩阵的行列扩展方式

    疯狂Python讲义,疯狂python讲义pdf,Python

    1. Python基础: - 变量与数据类型:Python中的基本数据类型包括整型、浮点型、字符串和布尔型。了解它们的用法和转换是学习Python的第一步。 - 字符串操作:Python字符串是不可变的,支持丰富的操作,如切片、...

    笨方法学python视频

    根据提供的文件信息,“笨方法学python视频”是一个与学习Python编程语言相关的教学资源。下面将对这个资源涉及的关键知识点进行详细解析。 ### 学习Python的重要性 Python是一种高级编程语言,以其简洁清晰的语法...

    python例程 (1).rar_Python 例程_python_python例程

    在这个"python例程 (1).rar"压缩包中,我们很显然会发现一系列关于Python编程的基础教程和实例,特别关注了图形界面编辑和各种Python库的使用。 首先,让我们探讨Python语言基础。Python的基础语句包括但不限于变量...

    互相关函数python实现的三种方法

    在Python中,我们可以采用多种方法来实现互相关函数的计算。以下将详细阐述这三种方法及其应用。 1. **NumPy库的`numpy.correlate`函数** NumPy是Python中用于科学计算的核心库,提供了`correlate`函数,可以计算...

    Python中方法和Python中函数的比较

    自定义函数是我们根据需求创建的,而内置函数则是Python语言本身提供的,如`len()`、`print()`等,它们提供了许多基本的计算和操作功能。 Python函数的一个关键特性是它们是无状态的。这意味着函数在执行过程中不会...

    java2python--java代码转python工具

    首先,我们要理解Java和Python两种语言的基本特性。Java是一种静态类型语言,强调“一次编写,到处运行”的理念,其语法严谨,重视类型检查,注重面向对象编程。而Python则是一种动态类型语言,其语法简洁,易于阅读...

    Python+中文手册.pdf_python中文手册_Python中文手册_python_

    1. **入门**:介绍Python的安装、基本语法、数据类型、控制结构等。 2. **标准库**:详述Python内置的函数和模块,如字符串操作、文件I/O、网络通信、数据解析等。 3. **高级主题**:涵盖异常处理、类与对象、装饰器...

    笨方法学python3-习题1-45

    - 习题1-10通常涉及基本的输入输出和变量操作。 - 习题11-20可能会让你编写简单的条件判断和循环语句。 - 习题21-30可能涉及到函数的定义和调用,以及模块的使用。 - 习题31-40可能涵盖列表、元组、字典等数据结构的...

    Python-基础语法.ppt

    安装Python 算术运算 布尔比较运算符 位运算 逻辑运算 简单数据类型 整型int 长整型long ...八进制和十六进制表示方法 字符串 编写一个python执行档 控制流 if语句 while语句 for循环 break语句 continue语句

    Python面试宝典.pdf

    1. 了解Python中垃圾回收机制的基本概念,包括引用计数、标记-清除、分代回收等。 2. 了解Python中垃圾回收机制的优点、缺点等。 本资源摘要信息提供了Python面试宝典的详细知识点,涵盖了Python基础知识、数据结构...

Global site tag (gtag.js) - Google Analytics