python征程3.0(python对象)
1.python使用对象模型来存储数据。构造任何类型的值都是一个对象。”尽管python被当成一种面向对象的脚本的编程语言“,但你完全能够写出不使用任何类和实例的脚本。
python对象都拥有三个特性:(1)身份、(2)类型、(3)值、
(1)身份:每个对象都有一个唯一的身份来标识自己。可以使用内建函数 id()得到。
(2)类型:对象的类型,决定了该对象可以保存的类型值。
(3)值:对象表示的数据项。
2.标准类型。
数字(分为几个子类型,中有三个是整形)
Integer (整形)
Boolean(布尔型)
long Integer (长整型)
complex number(复数型)
string (字符串)
list (列表)
dictionary (字典)
tuple (元组)
3.其他内建类型。
类型对象和type()类型对象。
注:None没有什么可用的属性,他的布尔值总是false。
4.内部类型。
代码
帧
跟踪记录
切片
省略
5.代码对象。
(1)帧对象。
帧对象包含python解释器在运行时所需要的所有信息。
(2)跟踪记录对象。
当代码出错,python会直接直接引发异常,并退出。
6.标准类型操作符。
(1)对象值比较。
>>>print([,]==[,])
False
>>>print([,]==[,])
True
我们会从注意到比较操作是针对对象的值进行的,也就是比较的是对象的值,而不是对象本身。
(2)对象身份比较。
作为对值比较的补充,Python也支持对像本身的比较。对象可以被赋值到另一个变量(通过引用)。
因为每个变量都指向同一个(共享的)数据对象,只要任何一个引用发生改变,该对象的其他引用也会随即发生改变。
例1:foo1和foo2指向相同的对象。
foo1=foo2=4.3
从值的角度看,这条语句只是一个多重赋值,将4.3这个值赋给了foo1和foo2这两个变量。
不过他还有另一层含义。事实是一个值为4.3的数字对象被创建,然后这个对象的引用被赋值给foo1和foo2,结果就是foo1和foo2指向同一个对象。
例2:foo1和foo2指向相同的对象
foo1=4.3
foo2=foo1
例3:foo1和foo2指向不同的对象。
foo1=4.3
foo2=1.3+3.0
注意:整型对象和字符串对象是不可变对象,所以python会高效的缓存他们。
>>>a=1,b=1
>>>id(a) >>>id(b) >>>
>>>c=1.0
>>>id(c) >>>d=1.0
>>>id(d)
7.布尔类型。
布尔逻辑操作符and,or,和not都是python关键字。
>>>x,y=3.1415926,-
>>>x<5.0
True
>>>not(x<5.0)
False
>>>(x<5.0) or (x>2.71828)
True
>>>(x<5.0) and (y>2.71828)
False
>>>not (x is y)
True
8.标准类型内建函数。
(1)type():接受一个对象作为它的参数,并返回它的类型。(返回值是一个类型对象)
>>>type()
<type,'int'>
>>>
>>>type("hello world")
<type,'string'>
>>>
>>>type(type())
<type,'type'>
(2)cmp():用以比较两个对象,obj1和obj2。如果obj1<obj2则返回一个负整型。若obj1>obj2则返回一个正整形。若obj1=obj2则返回0。他的行为非常类似于c语言中的strcmp()函数,比较在对象之间进行,不管对象是不是用户自定义的对象。
>>>a,b=-,
>>>cmp(a,b)
-
>>>cmp(b,a) >>>b=-
>>>cmp(a,b)
python征程3.0(python对象)的更多相关文章
- python征程2.0(python基础)
1.python中有一些基本规则的特殊字符. (1)#表示这后的字符为python注释. (2)\n标准的行分隔符. (3)\继续上一行.(也就是过长的语句可以使用反斜杠(\)分解成几行) ) and ...
- python 基础 5.0 python类一般形式
一. 类的一般形式 创建类我们一般使用class 关键字来创建一个类,class 后面跟类型名字,可以自定义,最后以冒号结尾,如下所示: #/usr/bin/python #coding=utf- ...
- New in Python 3.8.0
Python 3.8.0 发布时间: Oct. 14, 2019 这是一个Python3.8.0的稳定发行版. Python3.8.0是最新的Python编程语言发行版,ta包含了许多新的特征和优化. ...
- Python迭代器,可迭代对象,生成器
迭代器 迭代器(iterator)有时又称游标(cursor)是程式设计的软件设计模式,可在容器物件(container,例如链表或阵列)上遍访的界面,设计人员无需关心容器物件的内存分配的实现细节. ...
- python征程1.1(初识python)
在学习python前必须要掌握的一些基本知识 1.编程语言 2.python . C# JAVA 3.python: pypy cpython jpython 4.执行方 ...
- python 2.4 与 python 3.0 的比较
转过来,留着日后查看 [转自:]http://hi.baidu.com/autoitcn/blog/item/5f41973294b5fc4fac4b5f77.html python 2.4 与 py ...
- python学习笔记4(对象/引用;多范式; 上下文管理器)
### Python的强大很大一部分原因在于,它提供有很多已经写好的,可以现成用的对象 21. 动态类型:对象/引用 对象和引用: 对象是储存在内存中的实体,对象名只是指向这一对象的引用(refere ...
- Python 读写文件和file对象(转)
1.open使用open打开文件后一定要记得调用文件对象的close()方法.比如可以用try/finally语句来确保最后能关闭文件. file_object = open('thefile.txt ...
- Python基础教程之List对象 转
Python基础教程之List对象 时间:2014-01-19 来源:服务器之家 投稿:root 1.PyListObject对象typedef struct { PyObjec ...
随机推荐
- C# Azure 存储-队列
1.前言 本篇文章是根据Azure的官网document总结,如果想直接跳过本文章,可以点击下面的链接进入. https://www.azure.cn/zh-cn/documentation/arti ...
- React 生命周期
前言 学习React,生命周期很重要,我们了解完生命周期的各个组件,对写高性能组件会有很大的帮助. Ract生命周期 React 生命周期分为三种状态 1. 初始化 2.更新 3.销毁 初始化 1.g ...
- Java接口和抽象类的区别
今天看到项目中,写了一个抽象类,里面有很多方法继承了这类,当调用这个接口时,采用的是这个抽象类去调方法的,当时一想,这个不就是我们说的Java的多态的特征: 继承:存在继承关系的子类和父类 重写:子类 ...
- 了解Package Configurations
使用VS2010创建的SSIS Project有两种deployment model:project deployment 和 package deployment,默认是Project deploy ...
- ECMAScript6学习笔记 ——let、const、变量解构赋值
let 不存在变量提升 通过let声明的变量仅在块级作用域内有效 不允许在同一个作用域内重复声明一个变量 防止值公用 var oUl = document.querySelectorAll('ul&g ...
- bootstrap-modal 学习笔记 源码分析
Bootstrap是Twitter推出的一个开源的用于前端开发的工具包,怎么用直接官网 http://twitter.github.io/bootstrap/ 我博客的定位就是把这些年看过的源码给慢慢 ...
- WPF DatePicker只显示年和月 修改:可以只显示年
最近的项目,查询时只需要年和月,不需要日,因此需要对原有的DatePicker进行修改,查询了网上的内容,最终从一篇帖子里看到了添加附加属性的方法,地址是http://stackoverflow.co ...
- ASP.NET MVC5 网站开发实践(二) Member区域 - 咨询管理的架构
咨询.留言.投诉等功能是网站应具备的基本功能,可以加强管理员与用户的交流,在上次完成文章部分后,这次开始做Member区域的咨询功能(留言.投诉都是咨询).咨询跟文章非常相似,而且内容更少.更简单. ...
- 应用程序框架实战三十四:数据传输对象(DTO)介绍及各类型实体比较
本文将介绍DDD分层架构中广泛使用的数据传输对象Dto,并且与领域实体Entity,查询实体QueryObject,视图实体ViewModel等几种实体进行比较. 领域实体为何不能一统江湖? 当你阅读 ...
- SubSonic3.0使用例子
前段时间开发的框架使用了SubSonic2.2以后,觉得开发效率提高了不少,后期维护起来也非常方便,不由的喜欢上了SubSonic.中间有想过升级到更高版本,但度娘一下就放弃了,只有极少的中文版说明, ...