17号学习笔记
时间:2008-11-17 来源:hkebao
它不支持任何运算也没有任何内建方法。与C对应的是void
none类型的值与c中的NULL值非常相似!
JAVA中的VOID与NULL值!
<link rel="File-List" href="file:///C:%5CDOCUME%7E1%5CADMINI%7E1%5CLOCALS%7E1%5CTemp%5Cmsohtml1%5C01%5Cclip_filelist.xml"><style> </style>
下面的对象的布尔值为False
None
False
所有值 为0的数
0(整型)
浮点型
0L
0.0+0.0j(复数)
“”空字符串
[]空列表
()空元组
{}空字典
4.4 内部类型
代码
帧
跟踪记录
切片
省略
Xrange
4.4.1代码对象
代码对象 是编译过的python源代码片段,它是可执行对象。通过调用内建函数compile()可以得到代码对象。
代码对象可以被exec命令或eval()来执行。
4.4.2帧对象
表示python的执行栈帧。帧对象包含了python解释器在运行时所需要知道的所有信息。它的属性包括指向上一帧的链接。每次函数调用产生一个新的帧,每一个帧对象都会相应创建一个C栈帧。
4.4.4切片对象
多维切片语法:sequence[start1:end1,start2:end2]
或使用省略号sequence[…,start1:end1]
切片对象也可以由内建对象slice()来生成。
foostr = 'abcde'
>>> foostr[::-1]
'edcba'
>>> foostr[::-2]
'eca'
>>> foolist = [123,'xba',342.23,'abc'\]
SyntaxError: unexpected character after line continuation character
>>> foolist = [123,'xba',342.23,'abc']
>>> foolist[::-1]
['abc', 342.23000000000002, 'xba', 123]
4.4.5省略对象
用于扩展切片语法中起记号作用。这个对象在切片语法中表示省略号。类似null对象none
省略对象有一个唯一的名字Ellipsis它的布尔值始终为True
4.4.6 XRange对象
调用xrange()会生成一个Xrange对象。用于节省内存使用。
4.5 标准类型运算符
对象值的比较
数字类型根据数值的大小和符号比较
字符串按照字符序列值进行比较。
>>> a = "aa"
>>> b = "aa"
>>> a is b
True
>>> id(a) == id(b)
True
来 分析一下python中的is与is not
表示两个变量是否指向同一个对象。
4.5.3 布尔类型
and or not
标准类型内建函数
cmp() repr()(单反引号) str() type()
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 对象
>>> if isinstance(1,int):
print "saf"
saf
这个东西其实就相当于java中的instance关键字一样哦!
可以通过判断一个对象是否是某个类的实例进行比较处理处理
4.7 类型工厂函数
所有内建类型现在也都是类。像int(),type()虽然像函数,但是实质上是类。
调用它们其实就是相当于调用了得到一个实例了!
标准类型的分类
基本
内建
数据
对象
原始
类型
4.8.1存储模型
标量/原子类型 数值所有数值类型,字符串
容器类型 列表,元组,字典
4.8.3 访问模型
直接存取,顺序,映射
序列类型是指从0开始的索引顺序访问。一次可以访问一个或多个元素即切片。
字符串或列表和元组都可以归到一类。
映射类型类似序列的索引属性
访问模型
直接访问 数字
顺序访问 字符串,列表,元组
映射访问 字典
数据类型 存储模型 更新模型 访问模型
数字 Scalar 不可更改 直接访问
字符串 Scalar 不可更改 顺序访问
列表 Container 可更改 顺序访问
元组 Container 不可更改 顺序访问
字典 Container 可更改 映射
python替你管理内存的哦!没必要访问 指针了呵!
可以用id()函数得到一个对象的身份号。最接近指针的地址了。
在python中一切都是指针哦!
python中不支持单精度浮点数。而decimals 则拥有任意的精度。
在处理金钱这类数值的时候有用
数字
数字类型:整形 长整形 布尔型 双精度浮点 十进制浮点 复数
aInt = 1
aLong = -999999999999999999999L