01_python数据结构

元组

内容是确定的,长度不可变,有顺序的。
两种定义方式:
T = tuple()
T = ()
可迭代的都可以作为参数。
列表转元组
t = tuple([1,2,3])
元组的成员
dir(tuple)
带下划线的都是私有方法,通常不会去调用。通过私有方法可以了解到元素的属性。
t2 = (1,2,3)
(1,2) in t2
False
t3 = ((1,2),3)
(1,2) in t3
True
t = (1,2,3,4,3,2,1)
t.count(1) #统计1出现的次数
t.index(1) #返回1第一次出现的下标
t[1]
t[-2:]
元组不可变,所以代码更加安全,内容确保不会再改变,通常是在作为参数在函数调用时被使用,确保内容没有被所调用的函数所改变。

列表

列表的声明:
列表可变。增删改查。
l = list()
l = []
dir(list)
l = [1,2,3,4]
l1 = [‘a’,‘b’,‘c’]
l + l1#不会改变l,前后l与l1必须都是列表
l.extend(l1)#会改变l
l.append(1)#追加
l.insert(1,‘2’)在1的位置插入字符’2’
l.pop()#弹出尾部

l.pop(2)#弹出下表为2的元素,返回pop的元素

l.remove(1)#删除1,什么都不返回,返回空,下标从1开始
l.reverse() #内部反转
l.sort()#进行排序,从小到大
可变是为了保存过程中的中间结果,动态的保存了函数体内动态执行结果。

字典

创建字典的方法
d = dict()
d = dict(a=2,b=3)
d = dict([(1,2),(3,4)])
d = dict({1:2,3:4})
zip([1,2,3,4],[5,6,7,8])#返回可迭代对象的一一映射。转换为字典。
dir(dict)
d2 = d.copy()
d与d2的存储位置不在一起
d3 = d
d与d3的存储位置一致
d[‘a’]
d[‘e’]#报错
d.get(‘a’)
d.get(‘e’)#不会报错
d.get(‘e’,False)报出False的错误
d.has_key(‘a’)#True
d.has_key(‘e’)#False
d.items()
d.iteritems()
d.pop(‘a’)#弹出a对应的键值对

集合

s =set()#生成一个集合
s =set(‘hello’)===》set([‘h’,‘e’,‘l’,‘o’])
并:
s|s1
交集:
s&s1
s - s1:s中有s1中没有的。
s^s1:异或的就是成功的。
运算符必须是集合,但是update只要是可迭代的就可以了。
无序,唯一。集合的去重的并集。

  • 平时最常用的方法:切片、增删等。

深复制和浅复制

浅复制:只复制父对象,不会拷贝对象内部的子对象
深复制:拷贝对象及其子对象
import copy
copy.copy()#浅复制
copy.deepcopy()#深复制

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值