Python dict 使用

  1. sum 所有 value
    sum(d.values())

  2. dictionary.get(“bogus”, default_value)
    此时如果dict 不存在key"bogus",将返回default_value

  3. dictionary.setdefault(‘one’, 3.4)
    此时如果dict 存在’one’ 则等效于 return dictionary[‘one’]
    此时如果dict不存在’one’ 则等效于 return (dictionary[‘one’] = 3.4)

  4. 使class作为key
    重载函数 hash and eq

class MyThing:
    def __init__(self,name,location,length):
        self.name = name
        self.location = location
        self.length = length

    def __hash__(self):
        return hash((self.name, self.location))

    def __eq__(self, other):
        return (self.name, self.location) == (other.name, other.location)

    def __ne__(self, other):
        # Not strictly necessary, but to avoid having both x==y and x!=y
        # True at the same time
        return not(self == other)

https://stackoverflow.com/questions/4901815/object-of-custom-type-as-dictionary-key/4901847
https://stackoverflow.com/questions/5221236/how-can-i-make-my-classes-usable-as-dict-keys

posted on 2022-11-12 16:48  norsd  阅读(2)  评论(0编辑  收藏  举报  来源

导航