不引用Pyhton第三方库,实现一个有序列表。

class YouXu(dict):
#重写魔术魔法
def __init__(self):
#添加一个列表,用来放字典里的值
self.ls = []
super(YouXu,self).__init__()


#重写魔术魔法
def __setitem__(self,key,value):
#在添加新值得时候,将键添加到列表中
self.ls.append(key)
super(YouXu,self).__setitem__(key,value)
#重写打印魔术方法
def __str__(self):
self.va = []
#遍历字典对应的列表,按照设置值得顺序获取字典的每个键,
for ke in self.ls:
#获取设置键时该键对应的值
val = self.get(ke)
# 将每个键值对拼接并追加到一个列表中
self.va.append("'{}':{}".format(ke,val))
# 用","将列表的值链接并用"{}"包含住
return '{'+','.join(self.va)+'}'
# 新写一个popitem的方法
def popitem(self):
import random 
#从键表中随机获取一个键并将其从键表删除
key = random.choice(self.ls)
self.ls.remove(key)
#获取这个键对应的值
val = self.get(key)
# 返回随机获取的键值
return "('{}':{})".format(key,val)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值