Mercurial > code > home > repos > light9
view light8/util.py @ 1972:d4a07ad96aad
attempt a pyftdi output driver using code from https://github.com/jlbrogdon/dmx_controller/blob/master/OpenDmxUsb/__init__.py (gplv2)
Ignore-this: 5a4dbbc0493dfa0bf62cc9c5b79b96d7
author | drewp@bigasterisk.com |
---|---|
date | Sat, 08 Jun 2019 07:36:34 +0000 |
parents | 71489bb71528 |
children |
line wrap: on
line source
def maxes(dicts): ''' ({'a' : 5, 'b' : 9}, {'a' : 10, 'b' : 943}) ''' newdict = {} for d in dicts: for k,v in d.items(): newdict[k] = max(v, newdict.get(k, 0)) return newdict def scaledict(d,scl): # scales all values in dict and returns a new dict return dict([(k,v*scl) for k,v in d.items()]) # class Setting that scales, maxes def subsetdict(d, dkeys, default=0): """Subset of dictionary d: only the keys in dkeys. If you plan on omitting keys, make sure you like the default.""" newd = {} # dirty variables! for k in dkeys: newd[k] = d.get(k, default) return newd