python内置类型---1
强类型语言***********两个对象的比较*******************
1,值比较,对象中的数据是否相同==
2,身份比较,两个变量名引用的是否为同一对象
3,类型比较,
例子:
*************核心数据类型*****************
数字:int lang float complex bool
字符:str unicode
列表:list
字典:dict
元组:tuple
文件:file
其他类型:集合(set) frozenset 类类型 none
其他文件类工具:pipes fifos sockets
**************类型转换****************
str() repr() format():将非字符型数据转换为字符
int():转为整数
float():
In : s = "My boss is lihong"
list(s):将字串s转为列表
In : l1 = list(s)
In : print l1
['M', 'y', ' ', 'b', 'o', 's', 's', ' ', 'i', 's', ' ', 'l', 'i', 'h', 'o', 'n', 'g']
tuple(s):将字串s转为元组
In : t1 = tuple(s)
In : print t1
('M', 'y', ' ', 'b', 'o', 's', 's', ' ', 'i', 's', ' ', 'l', 'i', 'h', 'o', 'n', 'g')
set(s):将字串s转为集合
In : s1 = set(s)
In : print s1
set([' ', 'b', 'g', 'i', 'h', 'M', 'l', 'o', 'n', 's', 'y'])
frozenset():将字串s转换为不可变集合
dict(d):创建字典,其中d必须是(key,vlue)的元组序列
In : l3 = [('a',1),('b',11),('c',45)]
In : print l3
[('a', 1), ('b', 11), ('c', 45)]
In : d1 = dict(l3)
In : print d1
{'a': 1, 'c': 45, 'b': 11}
chr():将整数转换为字符
ord():将字符转换为整数值
hex():将整数转换为16进制字串
bin():将整数转换为2进制字符
oct():将整数转换为8进制字符
数字类型以及:
Python的数字字面量:布尔型,整数,浮点型,复数
True:1
False:0
import math
序列类型
字符类型:
字符串字面量:吧文本放入单引号、双引号或三引号(可以是三个单引号或三个双引号)
如果要使用Unicode编码,则再字符之前使用字符U进行标识,如u"tre"
文档字串:模块,类或函数的第一条语句是一个字符的话,该字符串就成为文档字符串,可以用__doc__属性引用
运算符:
索引运算
切片运算
扩展运算
************获取帮助******************
dir(sir)获取名称列表
help(str.find)
*************列表类型*****************
容器类型:
任意对象的有序集合,通过索引访问其中的元素,可变对象
支持异构,任意嵌套
定义一个列表:
l1 = []空列表
l2 =
l3 = 异构
l4 = [,['a','b']] 嵌套
支持在原处修改:
修改指定的索引元素,修改指定的分片,删除语句,内置方法
l2 = 32
l2 = 'xyz'修改
l2显示元素1和2
l2 = []删除
l2.del(l2)删除
In : l2.append(l3)
In : print l2
]
In : l3.
l3.append l3.extend l3.insert l3.remove l3.sort
l3.count l3.index l3.pop l3.reverse
In : l1 =
In : l2 = ['x','y','z']
In : l1 + l2连接两个列表返回一个新列表
Out:
In : l1 * 2把l1重复两次
Out:
in : 成员关系判断符
not in : 。。。
2 in l1返回True
range()
复制列表:
l2 = l1 因为列表支持原处修改,所以如果此时修改l1,l2也会跟着修改,这叫浅复制
l3 = l1[:] 此时才是复制一个新的列表赋值给l3,再修改l1,l3不会改变
l5 = copy.deepcopy(l1)深度复制,也是复制而不是指向同一个地址,如上一样
列表解析: []
**************元组tuple****************
表达式符号:()
容器类型:
任意对象的有序集合,通过索引访问其中的元素,不可变对象,长度固定
支持异构,嵌套
定义:t1 = (1,2,3,4,5,1)小括号可省略
t1.count(1)计数
t1.index(3)返回指定的索引
常见操作:
print t1
t2 = ()定义空元祖
t3 = ()
+ 可将两个元组合并生成新元组
*
in
not in
*************字典dict*****************
在其他编程语言中又称为关联数组或散列表:
通过键实现元素存取;无序集合;可变类型容器,长度可变,支持异构,支持嵌套
符号{},用逗号分隔,冒号隔开的键值映射表
{}:空字典
In : d1 = {'x':32,'y':}
In : d1['y']
Out:
In : d1['x'] = 88
In : print d1
{'y': , 'x': 88}
字典复制:
d2 = d1.copy()创建一个与d1相同的字典并赋值给d2
d3 = d1
In : d1.
d1.clear
d1.get 引用一个不存在的键也不会抛出异常
d1.iteritems 返回一个迭代器,i1.next可一个一个的显示,直到耗尽
d1.keys 返回键列表
d1.setdefault
d1.viewitems
d1.copy
d1.has_key 判断键值是否存在
d1.iterkeys
d1.pop 弹出指定(指定键)的键值映射
d1.update 将一个字典合并到当前字典(注意有键相同时)
d1.viewkeys
d1.fromkeys
d1.items 字典拆成元组,每对键值组成一个元组,形成元组列表
d1.itervalues返回一个迭代器,内容是值
d1.popitem 随机弹出键值映射
d1.values 返回值组成的列表
d1.viewvalues
In : t1,t2 = d1.it
d1.items d1.iteritems d1.iterkeys d1.itervalues
In : t1,t2 = d1.items()变量解包
In : print t1
('y', )
In : print t2
('x', 88)
In : m1,m2 = d1
In : print m1
y
In : print m2
x
dict(),定义字典的
************zip******************
In : zip('xyz','123','abc')
Out: [('x', '1', 'a'), ('y', '2', 'b'), ('z', '3', 'c')]
In : dict(zip('xyz','123'))构造字典
Out: {'x': '1', 'y': '2', 'z': '3'}
页:
[1]