Python对象的相关术语:
Python程序中保存的所有数据都是围绕对象这个概念展开的
- 程序中存储的所有数据都是对象
- 每个对象都有一个身份,一个类型和一个值
- 例如,school="MaGe linux"会以"MaGe linux"创建一个字符串对象,其身份是指向它在内存中所处位置的指针(其在内存中的地址),而school就是引用这个具体位置的名称
In [14]: name="herry" In [15]: id(name) Out[15]: 40364672 In [16]: type(name) Out[16]: str
对象的类型也成为对象的类别,用于描述对象的内部表示及它支持的方法和操作创建特定类型的对象时,有时也将该对象成为类型的实例实例被创建后,其身份和类型就不可更改
- 如果对象是可修改的,则称为可变对象
- 如果对象的值不可更改,则称为不可变对象
如果某个对象包含对其他对象的引用,则将其称为容器大多数对象都拥有大量特有的数据属性和方法
- 属性:与对象相关的值
- 方法:被调用时将在对象上执行某些操作的函数
- 使用(.)运算符可以访问属性和方法
类:数据和方法
数据:变量
方法:函数
类(实例化成对象)
Python内置函数id()可返回一个对象的身份,既对象在内存中位置
- is运算符用于比较两个对象的身份
- type()用于返回一个对象的类型
#两个对象比较: #1.值比较:对象中的数据是否相同 #2.身份比较:两个变量名引用的是否为同一对象 #3.类型比较:两个对象的类型是否相同 In [17]: name1="Tom" In [18]: name2="Tom" In [19]: name3="Jack" In [24]: name1==name2 Out[24]: True In [20]: name1 is name2 Out[20]: True In [21]: name1 is name3 Out[21]: False In [22]: type(name1) is type(name2) Out[22]: True
Python核心数据类型:
数字:int,log,float,complex,bool
字符:str,unicode
列表:list
元组:tuple
文件:file
其他类型:集合(set),fronzenset,类类型,none
其他文件类工具:pipes(管道),fifo(先进先出管道),sockets(套接字)
对象的类型本身就是一个对象,称为对象的类
- 该对象的定义是唯一的,且对于某类型的所有实例都是相同的
- 所有类型对象都有一个指定的名称,可以执行类型检查,如list,dict
类型转换:
str(),repr()或format():将非字符型数据转换成字符:
In [24]: name1==name2 Out[24]: True In [25]: num1=5.61 In [26]: type(num1) Out[26]: float In [27]: str(num1) Out[27]: ‘5.61‘ In [28]: num1=5.61 In [29]: str1=repr(num1) In [30]: type(str1) Out[30]: str
int():转为整数
float():转换成浮点数
list(s):将字串s转为列表
tuples(s):将字串s转换成元组
set(s):将字串s转为集合
dict(d):创建字典,其中d为(key,value)元组
In [31]: str2="45" In [33]: type(str2) Out[33]: str In [34]: num3=int(str2) In [35]: type(num3) Out[35]: int In [36]: num4=float(str2) In [37]: type(num4) Out[37]: float In [38]: str3="whats you name" #将字符穿转换列表(list)类型 In [39]: L1=list(str3) In [40]: print L1 [‘w‘, ‘h‘, ‘a‘, ‘t‘, ‘s‘, ‘ ‘, ‘y‘, ‘o‘, ‘u‘, ‘ ‘, ‘n‘, ‘a‘, ‘m‘, ‘e‘] In [41]: str4="whats the fuck" #将字符串转换为元组 In [42]: t1=tuple(str4) In [44]: print t1 (‘w‘, ‘h‘, ‘a‘, ‘t‘, ‘s‘, ‘ ‘, ‘t‘, ‘h‘, ‘e‘, ‘ ‘, ‘f‘, ‘u‘, ‘c‘, ‘k‘) #将字符串转换成集合 In [45]: print str4 whats the fuck In [46]: s1=set(str4) In [47]: print s1 set([‘a‘, ‘ ‘, ‘c‘, ‘e‘, ‘f‘, ‘h‘, ‘k‘, ‘s‘, ‘u‘, ‘t‘, ‘w‘]) #将数组转换成字典 In [51]: L3=[(‘a‘,1),(‘b‘,22),(‘c‘,56)] In [52]: print L3 [(‘a‘, 1), (‘b‘, 22), (‘c‘, 56)] In [53]: d1=dict(L3) In [54]: print d1 {‘a‘: 1, ‘c‘: 56, ‘b‘: 22}
时间: 2024-10-13 02:26:18