4-1 Python 对象。与所有 Python 对象有关的三个属性是什么?请简单的描述一下。

     身份:对象的唯一标识
     类型 :对象的类型决定了该对象可以保存什么类型的值
     值:对象表示的数据项
 
4-2 类型。不可更改(immutable)指的是什么?Python 的哪些类型是可更改的(mutable),哪些不是?
     不可更改(immutable)指的是不允许对象的值被更改。

     可变类型:列表、字典。
     不可变类型:数字、字符串、元组。
     可从id()判断是否可更改
 
4-3 类型。哪些 Python 类型是按照顺序访问的,它们和映射类型的不同是什么? 
     字符串、列表和元祖都是通过顺序访问。
     序列类型是指容器内的元素按从0开始的索引顺序访问。一次可以访问一个元素或多个元素。虽然字符串是简单文字类型,但因为它有能力按照顺序访问子字符串,所以也将它归到序列类型。
     映射类型类似序列的索引属性,不过它的索引并不使用顺序的数字偏移量取值,它的元素无序存放,通过唯一的键来访问,也就是映射类型。它容纳的是哈希键-值对集合。
 
4-4 type()。内建函数 type()做什么?type()返回的对象是什么?
      type()检测对象的类型的函数,type()返回的对象时对象的类型.
 
4-5 str() 和 repr()。内建函数 str()与 repr()之间的不同是什么?哪一个等价于反引号(``)运算符?。
     str()致力于生成一个对象的可读性好的字符串表示,它的返回结果通常无法用于eval()求值。repr()和('')做的是完全一样的事情,它们返回的是一个对象的“官方”字符串表示,也就是说绝大多数情况下可以通过求值运算(使用内建函数eval())重新得到该对象。
     简而言之,str()输出的字符串对用户比较友好,repr()输出的字符串对python比较友好。
 
4–6  对象相等。您认为 type(a) == type(b)和 type(a) is type(b)之间的不同是什么?为什么会选择后者?函数 isinstance()与这有什么关系?
    type(a)==type(b)比较的是对象的数值而不是对象本身,type(a) is type(b)通过对象类型属性对比,isinstance()也是通过对象类型属性对比
 
4-7 内建函数 dir()。在第二章的几个练习中,我们用内建函数 dir()做了几个实验,它接受一个对象,然后给出相应的属性。请对 types 模块做相同的实验。记下您熟悉的类型,包括您对这些类型的认识,然后记下你还不熟悉的类型。在学习 Python 的过程中,你要逐步将


“不熟悉”的类型变得“熟悉”起来。

 
4-8 列表和元组。列表和元组的相同点是什么?不同点是什么? 
     列表和元组相同点都是顺序访问,不同点是列表可以更改,元组不可更改。

4-9 练习,给定以下赋值: 


a = 10 

b = 10 
c = 100 
d = 100 
e = 10.0 
f = 10.0 
请问下面各表达式的输出是什么?为什么? 

    在python中,整型和字符串对象时不可变对象,Python会很高效地缓存他们,会造成我们认为Python应该创建新对象时,它却没有创建新对象的假象。所以,在前两个整型做比较时返回为true,浮点型做比较时返回为false
 

Python核心编程2第四章课后练习的更多相关文章

  1. 《Python核心编程》 第四章 Python对象- 课后习题

    练习 4-1. Python对象.与所有Python对象有关的三个属性是什么?请简单的描述一下. 答:身份.类型和值: 身份:每一个对象都有一个唯一的身份标识自己,可以用id()得到.  类型:对象的 ...

  2. Python核心编程2第五章课后练习

    5-1 整型,讲讲python普通整型与长整型区别 python整形一共有三种:布尔型,长整型和标准整型.普通整型与长整型的区别在于标准整形的取值范围是-2^31到2^31-1,长整型所能表达的数值与 ...

  3. Python核心编程2第三章课后练习

    1. 标识符.为什么Python 中不需要变量名和变量类型声明? Python中的变量不需要声明,变量的赋值操作既是变量声明和定义的过程.每个变量在内存中创建,都包括变量的标识,名称和数据这些信息.每 ...

  4. Python核心编程2第六章课后练习

    6-1 字符串 .string 模块中是否有一种字符串方法或者函数可以帮我鉴定一下一个字符串是否是另一个大字符串的一部分? #!/usr/bin/env python def contain(str1 ...

  5. Python核心编程笔记 第三章

    3.1     语句和语法    3.1.1   注释( # )   3.1.2   继续( \ )         一般使用换行分隔,也就是说一行一个语句.一行过长的语句可以使用反斜杠( \ ) 分 ...

  6. 《Python核心编程》 第六章 序列 - 课后习题

    课后习题 6–1.字符串.string 模块中是否有一种字符串方法或者函数可以帮我鉴定一下一个字符串是否是另一个大字符串的一部分? 答:成员关系操作符(in.not in) import string ...

  7. 《Python核心编程》 第五章 数字 - 课后习题

    课后习题  5-1 整形. 讲讲 Python 普通整型和长整型的区别. 答:普通整型是绝大多数现代系统都能识别的. Python的长整型类型能表达的数值仅仅与你机器支持的(虚拟)内存大小有关. 5- ...

  8. 《Python核心编程》 第七章 映射和集合类型 - 习题

    课后习题 7–1. 字典方法.哪个字典方法可以用来把两个字典合并到一起? 答: dict1 = {' :' python' } dict2 = {' :"hello" } dict ...

  9. 《Python核心编程》第五章:数字

    PS:[笔记+代码+图片]在GitHub上持续更新,欢迎star:https://github.com/gdouchufu/Core-Python-Programming 本章大纲 介绍Python支 ...

随机推荐

  1. JDk 内部分工具 简述

    jar — 一个创建和管理 jar 文件的工具. java — Java 应用启动器.在这篇文章里,开发和部署都是用的这个启动器. javac — Java 编译器. javadoc — API 文档 ...

  2. NOIP-2003 加分二叉树

    题目描述 设一个n个节点的二叉树tree的中序遍历为(1,2,3,…,n),其中数字1,2,3,…,n为节点编号.每个节点都有一个分数(均为正整数),记第i个节点的分数为di,tree及它的每个子树都 ...

  3. spring boot项目配置文件集合

    表 1. Spring Boot 推荐的基础 POM 文件 名称 说明 spring-boot-starter 核心 POM,包含自动配置支持.日志库和对 YAML 配置文件的支持. spring-b ...

  4. 使用 CAS 在 Tomcat 中实现单点登录

    单点登录(Single Sign On , 简称 SSO )是目前比较流行的服务于企业业务整合的解决方案之一, SSO 使得在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统.CAS ...

  5. jmeter参数化数据(_csvread函数、用户自定义变量等)

    以下是转载内容,仔细看过后,觉得用得最多的应该是csvread函数.用户自定义变量以及CSV DATA CONFIG控制器这几个,但是做练习之后,在结果树和聚合报告中怎么查看执行结果是个问题,没找到对 ...

  6. 理解标签重置reset

    /*样式表文件来自 懒人css http://lrcss.lrjz100.com *//*---------重置---------*/html{font-size: 100%;-webkit-text ...

  7. 编译C++,找不到头文件(fatal error: string: No such file or directory)

    在androidproject中编译C++时,找不到头文件,报错例如以下: fatal error: string: No such file or directory 解决该问题须要在Android ...

  8. 怎样使用SetTimer MFC 够具体

    转自:http://blog.csdn.net/ellor/article/details/1714741 Timer事件,即定时器事件,是在游戏编程中,常常使用的一个事件.借助它能够产生定时运行动作 ...

  9. 基于windows的ngnix基础使用

    前言 今天组长一大早心血来潮的跟我说,我希望我们小组电脑做web站点的服务器集群,你搞一搞,就用ngnix吧. 君要臣死,臣不得不死.顺便写个文章做个笔记. 简介 Nginx 是一个高性能的HTTP和 ...

  10. java多线程样例

    这里我们做一个完整的样例来说明线程产生的方式不同而生成的线程的差别: package debug; import java.io.*;import java.lang.Thread; class My ...