python - 既想用类似list的append的方法,也想用字典a[a]='xx'的方式更新每个键值的内容
怪我咯
怪我咯 2017-04-17 11:06:18
0
2
343

在写一个http类的时候,表示header、参数等可以用list或者dict两种结构来表示:
headers=[('Content-Type',2),('User-Agent','xxx')]
headers={'Content-Type':2,'User-Agent':'xxx'}
但是现在他们各有优势
list可以用append方法添加新的元素
dict可以以键值为依据更新其值,而list没有这层逻辑。
现在我既想用类似list的append的方法动态添加数据,也想用字典a[a]='xx'的方式更新每个键值的内容

我这个类类似于header有这种需求的属性(get、post的参数等)很多,如果用list或dict,然后写一个方法来实现另外的那个功能的话,就需要为每一个属性都写这个方法,感觉重复的方法太多了。
一般这种情况(同时需要动态添加元素,也需要按key更新value)要选用那种数据结构呢?
我感觉dict很好,就是没有自带方法动态向里面增加新元素啊

谢谢。

怪我咯
怪我咯

走同样的路,发现不同的人生

모든 응답(2)
大家讲道理

如果你一定要为dict增加一个append方法的话。。

class mydict(dict):
    def append(self, key, value):
        self[key] = value
小葫芦

dict.update

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!