第四章 Python对象

一、python对象的三个特性:

  身份:可用id()函数查看,可以被认为是该对象的内存地址

  类型:可用type()函数查看

  值

二、标准类型

数字  整型  布尔  长整型  浮点型  复数型  字符串  列表  元组  字典

三、其他内建类型

类型(Type)  Null对象(None)  文件  集合  函数(方法)  模块  类

1 类型对象

把类型本身当成对象!

使用type()返回对象的类型信息,该函数返回的即是一个类型对象!

所有类型对象的类型都是type,可这样实验:type(type(42))

2 Null对象

Null对象只有一个值,即None

四、内部类型

包括:代码  帧  跟踪记录  切片  省略  Xrange

一般程序不会直接与其接触

五、标准类型运算符

1 对象值的比较

容易理解,不赘述

2 对象身份的比较

a is b 等价于 id(a) == id(b)

a is not b

六、标准类型内建函数

1 type()

  返回值是一个类型对象

2 cmp()

  比较两个对象的值,行为类似于strcmp()函数

3 str()、repr()、''运算符

  该三个函数以字符串的方式获取对象的信息

  str()和''相似,返回的是一个对象的“官方”字符串表示,返回的是一个对象的“官方”字符串表示:

    obj == eval( repr(obj) )

  ''已经不鼓励使用了

4 type()和isinstance()

  if isinstance(num, (int, long, float, complex)):

    ……

七、类型工厂函数

Python 2.2 统一了类型和类, 所有的内建类型也都是类, 在这基础上, 原来的所谓内建转换函数象 int(), type(), list() 等等, 现在都成了工厂函数:

下面这些大家熟悉的工厂函数在老的 Python 版里被称为内建函数:

 int(), long(), float(), complex()
 str(), unicode(), basestring()
 list(), tuple()
 type()

支持新风格的类的全新的数据类型,也添加了相应的工厂函数:

dict()
 bool()
 set(), frozenset()
 object()
 classmethod()
 staticmethod()
 super()
 property()
 file()

八、标准类型的分类

在此不讲了,都是些空洞的东西

九、不支持的类型

  char或byte

  指针

  double

Python核心编程读笔 3的更多相关文章

  1. Python核心编程读笔 12:OOP

    第13章 面向对象编程 一.基本概念 1.object类是所有类的基类,如果你的类没有继承任何其他父类,object 将作为默认的父类. 2.python创建实例时无需new: myFirstObje ...

  2. Python核心编程读笔 10:函数和函数式编程

    第11章 函数和函数式编程 一 调用函数  1 关键字参数 def foo(x): foo_suite # presumably does some processing with 'x' 标准调用 ...

  3. Python核心编程读笔 1

    第一章 欢迎来到Python世界 1 Python特点: 高级的可进行系统调用的解释性语言 面向对象 可升级.扩展.移植 自动内存管理器(内存管理由Python解释器负责) 2 安装 Windows的 ...

  4. Python核心编程读笔 13:执行环境

    第14章  执行环境 一.可调用对象 python有四种可调用对象:函数.方法.类.一些类的实例 1 函数 (1)内建函数(BIF) BIF是用c/c++写的,编译后放入python解释器,然后把它们 ...

  5. Python核心编程读笔 11:模块

    第12章 模块 1.基本概念 模块的文件名就是模块名字.py 每个模块都定义了自己唯一的名称空间 模块的搜索路径:会被保存在 sys 模块的 sys.path 变量里 >>>sys. ...

  6. Python核心编程读笔 8: 文件和输入输出

    第九章 文件和输入输出 一.文件内建函数.方法.属性 1 文件内建函数 file_object = open(file_name, access_mode='r', buffering=-1) 工厂函 ...

  7. Python核心编程读笔 7: 条件和循环

    第八章 条件和循环 一.if python中的条件表达式:很奇葩!!! smaller = (x < y and [x] or [y])[0] 或者: smaller = x if x < ...

  8. Python核心编程读笔 6: 映射和集合类型

    第七章 映射和集合能力 一 字典(python中唯一的映射类型) 1 基本 创建和赋值: 正常创建:>>>dict = {'name':'earth', 'port':80} 用工厂 ...

  9. Python核心编程读笔 5: python的序列

    第六章 序列:字符串.列表.元组 一.序列 (1)序列类型操作符 seq[ind] 获得下标为 ind 的元素 seq[ind1:ind2] 切片操作 seq * expr 序列重复 expr 次 s ...

  10. Python核心编程读笔 4

    第五章 数字 二.整形 1 布尔型 2 标准整数类型 3 长整型 数字后面加L,能表示非常非常大的数字 目前,整形和长整型逐渐统一!!! 三.双精度浮点数 四.复数 有关复数的几个概念: 表示虚数的语 ...

随机推荐

  1. 关于C#重写,隐藏的一些事

    第一次开始写技术博客,不知该从何处下手,本人算是菜鸟一枚,每每看到博客园里面的大牛们分享的技术文章,只能望其项背,高不可攀.但细细想来,若不尝试着从小处从低处慢慢去积累分享,想要成为技术大牛也只能沦为 ...

  2. 使用XmlReader读Xml

    XmlDocument和XElement在读取Xml时要将整个Xml文档放到内存中去操作,这样做操作简单,但是很费内存和IO(可能是磁盘IO或者网络IO):而在有些场景下我们必须考虑尽可能节省内存和I ...

  3. hdu1281棋盘游戏

    Problem Description 小希和Gardon在玩一个游戏:对一个N*M的棋盘,在格子里放尽量多的一些国际象棋里面的“车”,并且使得他们不能互相攻击,这当然很简单,但是Gardon限制了只 ...

  4. C++ vector 实现二维数组时, 在类的头文件中定义时遇到"应输入类型符"的问题?

    见下,当我在类的声明文件中定义二维vector时,提示我应输入类型说明符; 但是相同的格式定义,在类中将二维vector修改为在源文件中定义就可以顺利通过,并顺利执行打印 打印结果如下: 望大神来解惑 ...

  5. python学习笔记:python序列

    python序列包括字符串.列表和元组三部分,下面先总的说一下python序列共有的一些操作符和内建函数. 一.python序列 序列类型操作符 标准类型的操作符一般都能适用于所有的序列类型,这里说一 ...

  6. oracle group by 使用

    SELECT supplier_id, max(evidence_date) AS evidence_date,max(TD_SUPPLIER_EVIDENCE_INFO_ID) AS TD_SUPP ...

  7. html5 Canvas处理图像 实例讲解

    最近在学习canvas,canvas有很强大的图像处理功能,下面写一个我的学习总结: canvas常用功能: 1. 绘制矩形.圆形.曲线.组合图形 2. 绘制文本 3.绘制渐变.变形的图形 4. 图片 ...

  8. Android 启动APP黑屏解决方案

    #Android 启动APP黑屏解决方案# 1.自定义Theme //1.设置背景图Theme <style name="Theme.AppStartLoad" parent ...

  9. 第二章——Parcelable接口的使用(跨进程,Intent传输)

    一.Parcelable类(Android独有的) 简介:Parcelable是一个接口. 作用:是Android提供的序列化接口,实现序列化和反序列化的操作. 二.跨进程使用 步骤一:创建Book类 ...

  10. Constructor Prototype Pattern 原型模式(PHP示例)

    当一个类大部分都是相同的只有部分是不同的时候,如果需要大量这个类的对象,每次都重复实例化那些相同的部分是开销很大的,而如果clone之前建立对象的那些相同的部分,就可以节约开销. 针对php的一种实现 ...