python核心编程第四章习题

4–1. Python 对象。与全部 Python 对象有关的三个属性是什么?请简单的描述一下。函数

身份、类型、值对象

4–2. 类型。不可更改(immutable)指的是什么?Python 的哪些类型是可更改的
(mutable),哪些不是?索引

对象的值是否能够更改被称为对象的可改变性字符串

列表、字典属于可变类型table

数字、字符串、元组处于不可变类型。im

4–3. 类型。哪些 Python 类型是按照顺序访问的,它们和映射类型的不一样是什么?tab

字符串、元组、列表是序列类型字典

映射类型相似序列的索引属性,不过它的索引并不使用顺序的数字偏移量取值, 它的元素
无序存放, 经过一个惟一的 key 来访问字符

4–4. type()。内建函数 type()作什么?type()返回的对象是什么?数字

type() 接受一个对象作为参数,并返回它的类型。它的返回值是一个类型对象

4–5. str() 和 repr()。内建函数 str()与 repr()之间的不一样是什么?哪个等价于反
引号(``)运算符?。

 repr() 输出对 Python 比较友好, 而 str()的输出对人比较友好  

 repr() 和 `` 作的是彻底同样的事情,绝大多数状况下能够经过求值运算(使用 eval()内建函数)从新获得该对象

4–6. 对象相等。您认为 type(a) == type(b)和 type(a) is type(b)之间的不一样是什么?
为何会选择后者?函数 isinstance()与这有什么关系?

type(a) == type(b)是对象值的比较,type(a) is type(b)是对象身份的比较, is 是找地址 找地址更快、高效

isinstance()用于判断一个对象是不是另一个给定类的实例。

4–8. 列表和元组。列表和元组的相同点是什么?不一样点是什么?

不一样点:列表可修改,元组不可修改;相同点:都是序列类型,元素按从 0 开始的索引顺序访问

4–9. 练习,给定如下赋值:a = 10b = 10c = 100d = 100e = 10.0f = 10.0请问下面各表达式的输出是什么?为何?(a) a is b    True(b) c is d    True(c) e is f     False???

相关文章
相关标签/搜索