1 Python对象的三个特性:身份 类型 值
身份:每个对象的唯一标识,可以认为是内存地址,可以用内建函数id()得到
类型:觉得对象可以保持什么类型的值,可以用内建函数type()得到对象类型,返回值是type类型
2 None,Python的null
值为False的对象:None ,False,值为零的数,0(整型),0L(长整型),0.0+0.0j(复数),""(空字符串),()(空元组),[](空列表),{}(空字典)
除此之外的都是True
3 对象值的比较
数字按大小,字符串按字母序列比较
'abc' <'cab'
结果是True
4 对象身份比较
a = 1.1
b = 1.1
e = 1.0+0.1
print id(a)
print id(b)
print id(e)
c =1
d =1
print id(c)
print id(d)
结果如下:
说明:
1 书上说-1~100的整数,如果相同,id是相同的,例子中a,b 的id应该不同
2 测试发现,即使是9999999.9的 id也是相同的,归纳为,相同的数字都是同一个id,而a和e是不同的,而且字符串如果相同也是同一个id
3 cmp()
比较两个对象,如果a < b返回一个负数相等为0,大于返回正数
4 str()和repe()
都可以方便的以字符串的方式获取对象的内容,类型,数值属性等信息。str得到的可读性好,二repr得到的字符串是一个“官方”的字符串,可以根据此值重新获得该对象
obj = eval(repr(obj))