学习python(二) 数据结构

 python常用的内建数据结构:列表[ ]  元组( )  字符串" "  字典{ }


最基本的数据结构:序列。其包含有列表 元组 字符串 Unicode字符串 buffer对象 xrange对象

sequence 序列通用操作:

索引 seq = ['hello', 1, 'world'] 使用seq[0]  seq[1]  seq[2]分别取出元素,可以反向索引,如-1 -2

分片 seq[0:2] 取其前两个元素成一个新的序列, 复制序列可以用分片 如 x = y[:]

相加 [1,2] + [3,4] 返回 [1,2,3,4]  必须类型相同,都是序列

乘法 ‘hello’ * 5 输出5次

成员资格  in   if x in lst:

内建函数len  min  max分别求序列长度,最小值,最大值

 

list 列表: [ ]

删除元素 del seq[1]

方法:

末尾追加新元素  lst.append(2)

末尾追加一个新列表(多个元素) lst.extend(lst2)

插入元素到列表  lst.insert(3,'love')  放到Index为3的位置处

 

移除元素并返回值 lst.pop()

移除第一个匹配项  lst.remove('love')


 反向存放元素  lst.reverse()

排序 原地排序 lst.sort()     返回排序的元素:  y = sorted(x)

 

计算某个元素在列表的出现次数  lst.count('love')

返回索引位置  lst.index(‘love’)

 

tuple 元组: (,)

与列表唯一不同的是元组中元素不可变

可以当键以及函数返回值存在,因为必须是不可变类型

 

 str 字符串:‘ ’   ” “   ”“”  “”“

字符串是不可变的

格式化输出:

print “hello, %s. %s enough for you?” %('world', 'hot') 输出 hello, world. Hot enough for you?

常用的转换类型有 %s  字符串  %d 整数   %f  浮点数  

转换%10.2f  输出浮点型,小数点后留两位,字段宽为10,不够用空格填充,默认右对齐 

方法:

查找字串  s.find('love') 返回索引,找不到返回-1

 

连接字符串  '+'.join(['1','2','3','4']) 

分割字符串  ‘1+2+3’.split('+') 默认分割符为所有空格(包括空格,制表,换行等)

 

替换部分字符  s.replace('a', 'b')  将s中所有a替换成b

去除两侧空格  s.strip()  一般用于读入文本中一行数据,先取出两端空格

 


dict 字典:{}

声明空字典  d={}

加入元素键值对  d[k] = v  键为不可变类型

返回键k的值  d[k]

删除键为k的项 del d[k]

检查键k是否存在  k in d

 方法:

清空 d.clear()

获取键的值 d.get(k)

检查是否有键  d.has_key(k)

 

返回所有项,以列表方式   d.items 或者d.iteritems

返回所有键 d.keys 或者  d.iterkeys

返回所有值  d.values 或者 d.itervalues

 

获得给定键的值并移除   d.pop(k)

移除随机项 d.popitem()

获得值并当没有该键时设定相应键值   d.setdefault('name','Alice')

一个字典加入另一个字典   d1.update(d2)



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值