Python核心编程(第二版)第四章练习题
2017-08-23 11:46
302 查看
4.10
4-1
Python 对象。与所有 Python 对象有关的三个属性是什么?请简单的描述一下。答:身份、类型、值。
身份:每一个对象都有一个唯一的身份来标识自己,我们可以用id()来查看该对象的内存地址。
类型:对象的类型决定了对象保存什么类型的数据,可以进行什么样的操作,遵循什么样的规则。type()可以查看该对象的类型,返回一个对象。
值:对象表示的数据项。
4-2
类型。不可更改(immutable)指的是什么?Python 的哪些类型是可更改的(mutable),哪些不是?答:不可更改指的是某些对象不允许对其值进行更新操作,比如说:数字、元组、字符串。可更改的类型有:列表、字典。
4-3
类型。哪些 Python 类型是按照顺序访问的,它们和映射类型的不同是什么?答:按照顺序访问的有:列表、元组、字符串。映射类型可以直接通过键来查询值,而顺序访问的可以通过索引。
4-4
type()。内建函数 type()做什么?type()返回的对象是什么?答:接受一个对象做为参数,并返回它的类型。它的返回值是一个类型对象。
4-5
str() 和 repr()。内建函数 str()与 repr()之间的不同是什么?哪一个等价于反引号(“)运算符?。答:str()得到的字符串的可读性好,而repr()得到的字符串可以用来重新获取该对象。repr()等价于反引号(“)。
4-6
对象相等。您认为 type(a) == type(b)和 type(a) is type(b)之间的不同是什么?为什么会选择后者?函数 isinstance()与这有什么关系?答:==比较的是值。而is是地址,也就是说验证下a和b的地址是否指向一个对象。寻址比计较值要快,函数isinstance()用来判断一个对象是否是一个已知类型。
4-7
内建函数 dir()。在第二章的几个练习中,我们用内建函数 dir()做了几个实验,它接受一个对象,然后给出相应的属性。请对 types 模块做相同的实验。记下您熟悉的类型,包括您对这些类型的认识,然后记下你还不熟悉的类型。在学习 Python 的过程中,你要逐步将“不熟悉”的类型变得“熟悉”起来。答:用来熟悉types类型。可以用type()函数进行相对性的类型返回。
4-8
列表和元组。列表和元组的相同点是什么?不同点是什么?答:都是序列,可以进行索引访问,支持切片操作。不同点是,一个是可变类型一个是不可变类型。
4-9
练习,给定以下赋值:a = 10
b = 10
c = 100
d = 100
e = 10.0
f = 10.0
请问下面各表达式的输出是什么?为什么?
(a) a is b
(b) c is d
(c) e is f
答(a):True。
答(b):True。
答(c):False。
Python中,仅仅缓存了简单整数,所以指向他们的地址都是一样的。但是对于浮点数没有缓存,所以另外建立了两个新的对象,可以通过id()函数发现两个浮点数的地址是不一样的。
相关文章推荐
- 《Python核心编程》第二版第七章练习题答案 第一部分
- 《Python核心编程》第二版第八章练习题答案 第一部分
- <Python核心编程(第二版)>第六章练习题
- 《Python核心编程》第二版--第四章 Python对象
- <Python核心编程(第二版)>第六章练习题
- 《Python核心编程》第二版第六章练习题答案-第六部分
- 《Python核心编程》第二版第七章练习题答案 第二部分
- 《Python核心编程》第二版第四章练习
- 《Python核心编程》第二版第75页第四章练习
- <Python核心编程(第二版)>第八章练习题
- 《Python核心编程(第二版)》练习题(自己写的)
- <Python核心编程(第二版)>第七章练习题
- Python核心编程(第二版)第三章练习题
- 《Python核心编程》第二版第六章练习题答案-第四部分
- 《Python核心编程》第二版第八章练习题答案 第二部分
- Python核心编程(第二版)第五章练习题
- 《Python核心编程》第二版第六章练习题答案
- 《Python核心编程》第二版第六章练习题答案-第五部分
- 《Python核心编程》第二版第六章练习题答案-第二部分
- 《Python核心编程》第二版第八章练习题答案 第三部分