[tor-commits] [sbws/master] chg: state: Add method to count list values
juga at torproject.org
juga at torproject.org
Tue Apr 14 13:54:37 UTC 2020
commit 9acad379acffa9c167529e7e12a2c445208cd60d
Author: juga0 <juga at riseup.net>
Date: Sat Mar 14 18:24:50 2020 +0000
chg: state: Add method to count list values
---
sbws/util/state.py | 15 +++++++++++++++
1 file changed, 15 insertions(+)
diff --git a/sbws/util/state.py b/sbws/util/state.py
index 86cc59b..50e6a66 100644
--- a/sbws/util/state.py
+++ b/sbws/util/state.py
@@ -90,3 +90,18 @@ class State:
def __contains__(self, item):
self._state = self._read()
return self._state.__contains__(item)
+
+ def count(self, k):
+ """
+ Returns the length if the key value is a list
+ or the sum of number if the key value is a list of list
+ or the key value
+ or None if the state doesn't have the key.
+ """
+ if self.get(k):
+ if isinstance(self._state[k], list):
+ if isinstance(self._state[k][0], list):
+ return sum(map(lambda x: x[1], self._state[k]))
+ return len(self._state[k])
+ return self.get(k)
+ return None
More information about the tor-commits
mailing list