基本要点:
程序中储存的所有数据都是对象(可变对象:值可以修改 不可变对象:值不可修改)
每个对象都有一个身份、一个类型、一个值
例:
>>> 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种数字类型:整型、长整型、浮点型、复数、布尔型
新闻热点
疑难解答