博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python学习笔记(2)-python对象
阅读量:7081 次
发布时间:2019-06-28

本文共 1121 字,大约阅读时间需要 3 分钟。

  hot3.png

1.所有的Python 对像都拥有三个特性:身份,类型和值。

身份:

每一个对象都有一个唯一的身份标识自己,任何对象的身份可以使用内建函数id()来得到。
这个值可以被认为是该对象的内存地址。您极少会用到这个值,也不用太关心它究竟是什么。

2.类型也是一种对象

>>> type(42)
>>> type(type(42))

3. 整数对象和 字符串对象是不可变对象,所以Python 会很高效的缓存它们。

Python 仅缓存简单整数,因为它认为在Python 应用程序中这些小整数会经常被用到。目前,Python 缓存的整数范围是(-1, 100),不过这个范围是会改变的,所以请不要在你的应用程序使用这个特性。

4.标准类型构建函数

函数 功能

cmp(obj1, obj2) 比较 obj1 和 obj2, 根据比较结果返回整数 i:
                        i < 0 if obj1 < obj2
                        i > 0 if obj1 > obj2
                        i == 0 if obj1 == obj2
repr(obj) 或 `obj` 返回一个对象的字符串表示
str(obj) 返回对象适合可读性好的字符串表示
type(obj) 得到一个对象的类型,并返回相应的type 对象

注:str()函数得到的字符串可读性好, 而repr()函数得到的字符串通常可以用来重新获得该对象, 通常情况下 obj == eval(repr(obj)) 这个等式是成立的。需要提醒一下的是, 并不是所有repr()返回的字符串都能够eval()内建函数得到原来的对象。也就是说 repr() 输出对 Python 比较友好, 而str()的输出对人比较友好。

5.Python 不支持方法或函数重载, 因此你必须自己保证调用的就是你想要的函数或对象。

6.类型工厂函数

Python 2.2 统一了类型和类, 所有的内建类型现在也都是类, 在这基础之上, 原来的所谓内建转换函数象int(), type(), list() 等等, 现在都成了工厂函数。 也就是说虽然他们看上去有点象函数, 实质上他们是类。当你调用它们时, 实际上是生成了该类型的一个实例。

7.标准类型的分类

a.存储模型

标量/原子类型 数值(所有的数值类型),字符串(全部是文字)

容器类型 列表、元组、字典

b.更新模型

可变类型 列表, 字典

不可变类型 数字、字符串、元组

c.访问模型

分类 Python 类型

直接访问 数字
顺序访问 字符串、列表、元组
映射访问 字典
 

 

转载于:https://my.oschina.net/shajin/blog/167013

你可能感兴趣的文章
hrbeu 错排问题
查看>>
oracle 根据一个时间段获取这个时间段内所有月份、天数、日期
查看>>
重构过程其实就是一个“让合适的东西干合适的事情
查看>>
自定义cell
查看>>
jsp页面执行原理及获取上下文根方式
查看>>
谨慎使用多线程中的fork
查看>>
MSSQL2005 修改数据库的排序规则
查看>>
洛谷 1344 [USACO4.4]追查坏牛奶Pollutant Control——最大流
查看>>
使用winavr的过程中,遇到的有关volatile的问题
查看>>
【iOS】Xcode中的-all_load与-ObjC
查看>>
论文中的数学符号使用
查看>>
WPF中UI及时更新,如何在处理长时间工作时,保持界面的持续更新
查看>>
CSS 样式表中padding 的用法
查看>>
Sql Server 主从数据库配置
查看>>
Event 对象
查看>>
经典冒泡排序,九九乘法表,三角形
查看>>
openstack之keystone
查看>>
我的IIS7.5竟然不支持ASP.NET路由
查看>>
[ISSUE][ERROR] console - Caught exception: Error: sourceEnd out of bounds
查看>>
C到C++的升级
查看>>