基本要点:

程序中储存的所有数据都是对象(可变对象:值可以修改 不可变对象:值不可修改)
每个对象都有一个身份、一个类型、一个值
例:
>>> a1 = 'abc' >>> type(a1) str
创建一个字符串对象,其身份是指向它在内存中所处的指针(在内存中的位置)
a1就是引用这个具体位置的名称
使用type()函数查看其类型
其值就是'abc'
自定义类型使用class
对象的类型用于描述对象的内部表示及其支持的方法和操作
创建特定类型的对象,也将该对象称为该类型的实例,实例被创建后,其身份和类型就不可改变
容器:某对象内包含对其它对象的引用
对象拥有特有的数据属性和方法,使用点运算符调用
数据:变量
方法:函数
1) 对象的身份和类型
两个对象比较:
1、值比较:对象中的数据是否相同;
2、身份比较:两个变量名引用的是否为同一对象;
3、类型比较:两个对象的类型是否相同;
注意:
内置函数id()可返回对象的身份即在内存中的位置
is比较两个对象的身份
type()返回对象的类型
例:
>>> num1 = 5 >>> num2 = 6 >>> num1 == num2 值比较 False >>> num1 is num2 身份比较 True >>> type(num1) is type(num2) 类型比较 True
2)核心数据类型
数字:int, long, float, complex(复数), bool
字符:str, unicode
列表:list
字典:dict
元组: tuple
文件:file
其它类型:集合(set), frozenset, 类类型, None
3)类型转换
str(), repr()或format():将非字符型数据转换为字符;
int(): 转为整数
float(): 转为浮点数
list(s): 将字串s转为列表
tuple(s):将字串s转为元组
set(s): 将字串s转为集合
frozenset(s):将字串s转换为不可变集合;
dict(d): 创建字典;其d必须是(key, value)的元组序列
例:
>>> str1 = 'hello,fanison'
>>> list(str1)
['h', 'e', 'l', 'l', 'o', ',', 'f', 'a', 'n', 'i', 's', 'o', 'n']
>>> tuple(str1)
('h', 'e', 'l', 'l', 'o', ',', 'f', 'a', 'n', 'i', 's', 'o', 'n')
>>> set(str1)
set(['a', 'e', 'f', 'i', 'h', 'l', 'o', ',', 's', 'n']) 特别注意!!!去重
>>> l1=[('a',1),('b',2),('c',3)]
>>> list(l1)
{'a': 1, 'c': 3, 'b': 2}
补充例题:
>>> a = 'ABC' >>> b = a >>> a = 'XYZ' >>> print a b 'XYZ' 'ABC'
图解过程
4)数字类型操作
5种数字类型:整型、长整型、浮点型、复数、布尔型
所有数字类型均不可变
>>> a = 10# 整型
>>> b = 1.5 # 浮点型
>>> c = True # 布尔型
>>> d = 5+2j # 复数
例:
>>> 1 + 2 3 >>> 1.0 + 2 3.0 >>> 11 % 4 3 >>> 11.0 / 4 2.75
整数和浮点数混合运算的结果是浮点数
5)布尔类型
bool(布尔型)之所以属于数字类型,是因为bool是int的子类。
>>> int(True) 1 >>> int(False) 0 >>> bool(1) True >>> bool(-1) True >>> bool(0) False
结论:
bool 转 int时, Ture-->1, False-->0
int 转 bool时, 非0-->True, 0-->False
与运算:只有两个布尔值都为 True 时,计算结果才为 True。
>>> True and True True >>> True and False False >>> False and True False >>> False and False False
或运算:只要有一个布尔值为 True,计算结果就是 True。
>>> True or True True >>> True or False True >>> False or True True >>> False or False False
非运算:把True变为False,或者把False变为True:
>>> not True False >>> not False True
注意:1、任何非0数字和非空对象都为真;
2、数字0、空对象和特殊对象None均为假;
and 和 or 运算的一条重要法则:短路计算。
1. 在计算 a and b 时,如果 a 是 False,则根据与运算法则,整个结果必定为 False,因此返回 a;如果 a 是 True,则整个计算结果必定取决与 b,因此返回 b。
2. 在计算 a or b 时,如果 a 是 True,则根据或运算法则,整个计算结果必定为 True,因此返回 a;如果 a 是 False,则整个计算结果必定取决于 b,因此返回 b。
所以Python解释器在做布尔运算时,只要能提前确定计算结果,它就不会往后算了,直接返回结果。
例:
>>> a = 'python' >>> print 'hello,', a or 'fanison' hello,python >>> b = '' >>> print 'hello,', b or 'fanison' hello,fanison
以上这篇Python对象类型及其运算方法(详解)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
# python对象类型
# 关于Python中定制类的比较运算实例
# python如何让类支持比较运算
# Python面向对象编程之类的运算
# 布尔
# 字串
# 浮点
# 整型
# 给大家
# 浮点数
# 转换为
# 都为
# 都是
# 都有
# 是因为
# 子类
# 均为
# 对其
# 希望能
# 自定义
# 特有的
# 这篇
# 它在
# 它就
相关文章:
网站制作话术技巧,网站推广做的好怎么话术?
国美网站制作流程,国美电器蒸汽鍋怎么用官方网站?
猪八戒网站制作视频,开发一个猪八戒网站,大约需要多少?或者自己请程序员,需要什么程序员,多少程序员能完成?
建站与域名管理如何高效结合?
深入理解Android中的xmlns:tools属性
如何设计高效校园网站?
,sp开头的版面叫什么?
建站之星多图banner生成与模板自定义指南
建站168自助建站系统:快速模板定制与SEO优化指南
长沙企业网站制作哪家好,长沙水业集团官方网站?
如何选择高效响应式自助建站源码系统?
建站VPS配置与SEO优化指南:关键词排名提升策略
建站之星24小时客服电话如何获取?
c# Task.Yield 的作用是什么 它和Task.Delay(1)有区别吗
建站主机功能解析:服务器选择与快速搭建指南
建站主机无法访问?如何排查域名与服务器问题
枣阳网站制作,阳新火车站打的到仙岛湖多少钱?
建站之星导航如何优化提升用户体验?
怎么用手机制作网站链接,dw怎么把手机适应页面变成网页?
表情包在线制作网站免费,表情包怎么弄?
c++怎么用jemalloc c++替换默认内存分配器【性能】
深圳网站制作设计招聘,关于服装设计的流行趋势,哪里的资料比较全面?
如何在IIS7上新建站点并设置安全权限?
教学论文网站制作软件有哪些,写论文用什么软件
?
香港服务器建站指南:外贸独立站搭建与跨境电商配置流程
如何快速搭建高效WAP手机网站?
如何快速登录WAP自助建站平台?
如何解决VPS建站LNMP环境配置常见问题?
电脑免费海报制作网站推荐,招聘海报哪个网站多?
如何快速使用云服务器搭建个人网站?
东莞市网站制作公司有哪些,东莞找工作用什么网站好?
建站主机数据库如何配置才能提升网站性能?
行程制作网站有哪些,第三方机票电子行程单怎么开?
建站之星后台管理:高效配置与模板优化提升用户体验
Dapper的Execute方法的返回值是什么意思 Dapper Execute返回值详解
c# 在高并发下使用反射发射(Reflection.Emit)的性能
已有域名如何快速搭建专属网站?
成都网站制作价格表,现在成都广电的单独网络宽带有多少的,资费是什么情况呢?
高防网站服务器:DDoS防御与BGP线路的AI智能防护方案
微信小程序 input输入框控件详解及实例(多种示例)
北京营销型网站制作公司,可以用python做一个营销推广网站吗?
香港服务器选型指南:免备案配置与高效建站方案解析
如何在服务器上三步完成建站并提升流量?
专业公司网站制作公司,用什么语言做企业网站比较好?
赚钱网站制作软件,建一个网站怎样才能赚钱?是如何盈利的?
香港服务器网站测试全流程:性能评估、SEO加载与移动适配优化
如何快速搭建高效简练网站?
制作网站的基本流程,设计网站的软件是什么?
制作网站的过程怎么写,用凡科建站如何制作自己的网站?
*请认真填写需求信息,我们会在24小时内与您取得联系。