知识回顾:
本节知识视频教程
文字讲解开始:
一、序列
原有学习过的序列有:字典、元组、列表、字符串等。
序列的各个类型对应使用符号:
二、序列的原理
以下开始以字典举例,其它的序列类似。
我们在调用序列的时候,其实一些操作对应魔法方法:
三、自定义类的序列
通过序列的各项操作与魔法方法的对应关键,我们可以自定义一个自己的序列。使用类来定义类中的序列,这样可以方便我们操作类中的一些属性和方法。
四、总结强调
1.掌握序列的实现原理
2.掌握类的自定义序列方法
__len__
__setitem__
__getitem__
__delitem__
本节源码:
class MyDict:
#类的构造方法
def __init__(self):
self.length=0
self.ljydic={}
print("已经实例化一个类")
#模拟序列操作,获取字典的长度
def __len__(self):
return self.length
#模拟序列,设置字典
def __setitem__(self, key, value):
self.ljydic[key]=value
self.length+=1
print("字典增加了一项:",key,"=",value)
#模拟序列,获取字典
def __getitem__(self, item):
return self.ljydic[item]
#模拟序列,进行删除某个项
def __delitem__(self, key):
del self.ljydic[key]
self.length-=1
#实例化类
md=MyDict()
md["aaa"]="老刘"
print("字典长度:",len(md),md.ljydic)
md["bbb"]="刘金玉"
print("字典长度:",len(md),md.ljydic)
md["ccc"]="编程创造城市"
print("字典长度:",len(md),md.ljydic)
#模拟删除
del md["bbb"]
print("字典长度:",len(md),md.ljydic)
#模拟获取
print(md["ccc"])