Python数据类型二

1. 列表(list

list(s) 将序列s转换为一个列表
列表是由一序列特定顺序排列的元素组成的。可以把字符串、数字、字典等任何东西加入到列表中,元素之间用逗号分隔,如:a=['a','b','c',123]
a.append(obj) 在list a末尾追加一个元素, 该方法无返回值,但是会修改原来的列表
a.index(obj) 返回str在列表中第一次出现的位置,不存在则抛出异常(与字符串的find类似)
a.insert(i,obj) 在位置i上插入obj,其余元素向后推,如果i大于列表长度,就在最后添加,如果i小于0,就在最开始添加
a.pop(obj=list[-1]) 移除列表中的一个元素(默认最后一个元素),并且返回该元素的值
a.remove(obj) 移除list中第一个值为obj的元素,如果不存在会抛出异常
a.sort([func]) 对列表元素排序,func为可选参数, 如果指定了该参数会使用该参数的方法进行排序
a.reverse() 反转序列,与sort相反

a.extend(seq) 追加一个列表,等价于+=
a.count(obj) 返回obj出现的次数
len(list) 返回List的长度
cmp(list1, list2) 比较两个列表的元素

切片:
a[3:] 取list a中下标为3的元素到最后
a[1:5] 取list a中下标为1到5的元素
a[1:5:2] 取list a中下标为1到5的元素,步长为2(每次跳过一个取值)
注意:切片的时候,取的是最后一位数字减一

2.元组(tuple)

tuple可以说是不可变的list,但是tuple和list还是有些差别
tuple唯一和list的区别就是[]变成了(),其他没有什么变化,tuple不能增加和减少,它本身自己的方法很少,只有count和index两个方法,其他的list方法都不可用
b=('abc',) 元素在表示单个元素的时候,必须跟一个","进行分离,否则python解析器不会认为是元组
tuple( seq ) 将序列转换为元组
b.count(obj) 统计某个元素的个数
b.index(obj) 返回某个元素的下标(第一个匹配的),如果元素不存在即返回错误

3.字典(Dictionary)

字典是另一种可变容器模型,且可存储任意类型对象
字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中
如:d = {key1 : value1, key2 : value2 }
键必须是唯一的,但值则不必。
值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组
字典赋值的3种方式:
dic={'name':'feng','age':20,'sex':'man'}
dic2=dict(a=1,b=2,c=3)
dic3=dict([('name','test'),('age',20)])

字典常用的方法:
del dic['name'] # 删除键是'name'的条目
dic.clear() # 清空词典所有条目
del dic # 删除词典
dic.copy() copy() 函数返回一个字典的浅复制(浅拷贝: 引用对象)
dic.get(key, default=None) get() 函数返回指定键的值,如果值不在字典中返回默认值,key是字典中要查找的键,default -- 如果指定键的值不存在时,返回该默认值值
dic.keys() keys() 函数以列表返回一个字典所有的键
dic.values() values() 函数以列表返回字典中的所有值
dic.iteritems() iteritems() 函数以列表返回可遍历的(键, 值) 元组数组(同items一样效果,开发中常用iteritems,因为iteritems是取一次用一次,不会一次性取出所有内容)
函数使用举例:
for k,v in dic.iteritems():
print (k,v)
dic.update(dict2) 函数把字典dict2的键/值对更新到dict里
dic.has_key(key) 用于判断key是否存在于字典dic中,如果键在字典dict里返回true,否则返回false
dic.pop(key[,default]) 删除字典给定键 key 所对应的值,返回值为被删除的值。key值必须给出, 否则,返回default值
dic.fromkeys(seq[, value])) fromkeys() 函数用于创建一个新字典,以序列seq中元素做字典的键,value为字典所有键对应的初始值
举例:
l=['a','b','c','d']
m={}
n=m.fromkeys(l,111)
n=dict.fromkeys(l,222)
print(n)
zip([seql, …]) 接受一系列可迭代对象作为参数,将对象中对应的元素打包成一个个tuple(元组),然后返回由这些tuples组成的list(列表)。若传入参数的长度不等,则返回list的长度和参数中长度最短的对象相同
dict.update(dict2) 把字典dict2的键/值对更新到dict里
sorted(iterable,key,reverse) 其中iterable表示可以迭代的对象,例如可以是dict.items()、dict.keys()等,key是一个函数,用来选取参与比较的元素,reverse则是用来指定排序是倒序还是顺序,reverse=true则是倒序,reverse=false时则是顺序,默认是reverse=false。 直接使用sorted(dic.keys())就能按key值对字典排序,这里是按照顺序对key值排序的,如果想按照倒序排序的话,则只要将reverse置为true即可
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值