1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > python 不区分大小写的字典实现

python 不区分大小写的字典实现

时间:2019-12-16 13:49:36

相关推荐

python 不区分大小写的字典实现

python 不区分大小写的字典实现

在网上搜索了一些,没有满意的, 使用 multidict 功能太多,又用不上.因此写了以下几行代码,有需要的可以参考一下,如发现错误可留言指出

在网上搜索了一些,没有满意的, 使用 multidict 功能太多,又用不上.因此写了以下几行代码,有需要的可以参考一下,如发现错误可留言指出

除了key为字 符串时,忽略大小写之外与普通字典是一样的

class MyICaseDict(dict):"""不区分大小写的字典使用两个字典来存放数据1个存放名称,一个存数据"""def __init__(self,**kw):"__init__(self,**kw)"self.kp = {};for k in kw.keys():self.__setitem__(k,kw[k]);def __contains__(self, k):"__contains__(self, k)"if isinstance(k,str):kn=k.lower();if not self.kp.__contains__(kn):return False;k=kn;return super().__contains__(k);def __setitem__(self,k,v):"__setitem__(self,k,v)"if isinstance(k,str):kn=k.lower();self.kp[kn]=k;k=kn;super().__setitem__(k,v);def __delitem__(self,k):" __delitem__(self,k)"if isinstance(k,str):k=k.lower();self.kp.pop(k);super.__delitem__(k);def __getitem__(self, k):"__getitem__(self, k)"if isinstance(k,str):k=k.lower();return super().__getitem__(k);def actual_key_case(self, k):"actual_key_case(self, k) 获取真实的key名"if isinstance(k,str):return self.kp[k.lower()];return k;

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。