Chapter4~Python对象
2016-07-13 08:08
190 查看
4-1 Python对象。与所有Python对象有关的三个属性是什么?请简单地描述一下。
身份 :该对象的内存地址;
类型:决定了该对象可以保存什么类型的值,可以进行什么样的操作以及遵循什么样的规则;
值:对象表示的数据项
4-2 类型。不可更改(immutable)指的是什么?Python的那些类型是可更改(mutable),哪些不是?
不可更改指不可变对象不允许他们的值被改变;
immutable:数字、字符串、元组;
mutable:列表、字典
4-3 类型。哪些Python类型是按顺序访问的,它们和映射类型的不同是什么?
字符串、列表、元组
映射类型的元素无序存放,通过一个唯一的键来访问,这就是映射类型,它容纳的是哈希键-值对的集合。
4-4 type().内建函数type()做什么?type()返回的对象是什么?
返回任意对象的类型
对象的类型
4-5 str() 和 repr().内建函数str()与repr()之间的不同是什么?哪一个等价于反引号(‘’)操作符?
str()函数得到的字符串可读性好,而repr()函数得到的字符串可以用来重新获得该对象,通常情况下obj == eval(repr(obj))这个等式是成立的。
repr()等价于('')
4-6 对象相等。 你认为type(a) == type(b)和type(a) is type(b)之间的不同是什么?为什么会选择后者?函数isinstance()与这有什么关系?
“==”比较的是值,is比较的是对象。isinstance()用来判断一个对象是否属于这个类。
4-7 内建函数dir()。在第2章的几个练习中,我们用内建函数dir()做了几个实验,它接受一个对象,然后给出相应的属性。请对type模块做相同的实验。记下你熟悉的类型,包括你对这些类型的认识,然后记下你还不熟悉的类型。在学习Python的过程中,你要逐渐将‘不熟悉’的类型变得熟悉起来。
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 a和b是同一个对象
(b)True c和d是同一个对象
(c)False e和f不是同一个对象
(c)False e和f不是同一个对象
身份 :该对象的内存地址;
类型:决定了该对象可以保存什么类型的值,可以进行什么样的操作以及遵循什么样的规则;
值:对象表示的数据项
4-2 类型。不可更改(immutable)指的是什么?Python的那些类型是可更改(mutable),哪些不是?
不可更改指不可变对象不允许他们的值被改变;
immutable:数字、字符串、元组;
mutable:列表、字典
4-3 类型。哪些Python类型是按顺序访问的,它们和映射类型的不同是什么?
字符串、列表、元组
映射类型的元素无序存放,通过一个唯一的键来访问,这就是映射类型,它容纳的是哈希键-值对的集合。
4-4 type().内建函数type()做什么?type()返回的对象是什么?
返回任意对象的类型
对象的类型
4-5 str() 和 repr().内建函数str()与repr()之间的不同是什么?哪一个等价于反引号(‘’)操作符?
str()函数得到的字符串可读性好,而repr()函数得到的字符串可以用来重新获得该对象,通常情况下obj == eval(repr(obj))这个等式是成立的。
repr()等价于('')
4-6 对象相等。 你认为type(a) == type(b)和type(a) is type(b)之间的不同是什么?为什么会选择后者?函数isinstance()与这有什么关系?
“==”比较的是值,is比较的是对象。isinstance()用来判断一个对象是否属于这个类。
4-7 内建函数dir()。在第2章的几个练习中,我们用内建函数dir()做了几个实验,它接受一个对象,然后给出相应的属性。请对type模块做相同的实验。记下你熟悉的类型,包括你对这些类型的认识,然后记下你还不熟悉的类型。在学习Python的过程中,你要逐渐将‘不熟悉’的类型变得熟悉起来。
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 a和b是同一个对象
(b)True c和d是同一个对象
(c)False e和f不是同一个对象
(c)False e和f不是同一个对象
相关文章推荐
- Python笔记(2)函数
- Python学习(6)
- Python学习(5)
- 如何在MAC和WINDOWS平台下安装Python第三方库
- 使用python实现多渠道打包
- python黑魔法 -- 内置方法使用
- Python中的变量和作用域详解
- python 间接处理webp图片文件
- python 借用psutil调用和kill子进程及孙进程
- python使用os.system(cmd)解压缩rar文件
- windows系统下Python环境的搭建
- python 科学计算
- python scrapy使用
- Python的Bottle框架中实现最基本的get和post的方法的教程
- Python中的闭包
- 有趣的超短Python代码
- 使用Eclipse编写Python代码(又名Eclipse的使用)
- python3的默认编码
- Python之函数参数介绍
- **PYTHON**递归函数