new val_sum for refactoring
This commit is contained in:
@@ -1,7 +1,7 @@
|
|||||||
from typing import List
|
from typing import List
|
||||||
from collections import defaultdict
|
from collections import defaultdict
|
||||||
|
|
||||||
from utils import percent, top_key, plural, precise
|
from utils import percent, top_key, plural, precise, val_sum
|
||||||
|
|
||||||
|
|
||||||
class Composition:
|
class Composition:
|
||||||
@@ -47,7 +47,7 @@ class Composition:
|
|||||||
ret += [
|
ret += [
|
||||||
f"- **answers**: {self.answers:,} ({percent(self.answers/msg_count)})"
|
f"- **answers**: {self.answers:,} ({percent(self.answers/msg_count)})"
|
||||||
]
|
]
|
||||||
total_emotes = sum(self.emotes.values())
|
total_emotes = val_sum(self.emotes)
|
||||||
if total_emotes > 0:
|
if total_emotes > 0:
|
||||||
top_emote = top_key(self.emotes)
|
top_emote = top_key(self.emotes)
|
||||||
ret += [
|
ret += [
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ from typing import List, Optional
|
|||||||
from collections import defaultdict
|
from collections import defaultdict
|
||||||
|
|
||||||
|
|
||||||
from utils import mention, channel_mention, plural, percent, top_key
|
from utils import mention, channel_mention, plural, percent, top_key, val_sum
|
||||||
|
|
||||||
|
|
||||||
class Presence:
|
class Presence:
|
||||||
@@ -37,7 +37,7 @@ class Presence:
|
|||||||
]
|
]
|
||||||
if show_top_channel:
|
if show_top_channel:
|
||||||
top_channel = top_key(self.channel_usage)
|
top_channel = top_key(self.channel_usage)
|
||||||
channel_sum = sum(self.channel_usage.values())
|
channel_sum = val_sum(self.channel_usage)
|
||||||
found_in = sorted(
|
found_in = sorted(
|
||||||
self.channel_usage,
|
self.channel_usage,
|
||||||
key=lambda k: self.channel_usage[k] / self.channel_total[k],
|
key=lambda k: self.channel_usage[k] / self.channel_total[k],
|
||||||
@@ -52,14 +52,14 @@ class Presence:
|
|||||||
if member_specific:
|
if member_specific:
|
||||||
if len(self.mentions) > 0:
|
if len(self.mentions) > 0:
|
||||||
top_mention = top_key(self.mentions)
|
top_mention = top_key(self.mentions)
|
||||||
mention_sum = sum(self.mentions.values())
|
mention_sum = val_sum(self.mentions)
|
||||||
ret += [
|
ret += [
|
||||||
f"- **was mentioned**: {plural(mention_sum, 'time')} ({percent(mention_sum/self.mention_count)} of {type})",
|
f"- **was mentioned**: {plural(mention_sum, 'time')} ({percent(mention_sum/self.mention_count)} of {type})",
|
||||||
f"- **mostly mentioned by**: {mention(top_mention)} ({plural(self.mentions[top_mention], 'time')}, {percent(self.mentions[top_mention]/mention_sum)})",
|
f"- **mostly mentioned by**: {mention(top_mention)} ({plural(self.mentions[top_mention], 'time')}, {percent(self.mentions[top_mention]/mention_sum)})",
|
||||||
]
|
]
|
||||||
if len(self.mention_others) > 0:
|
if len(self.mention_others) > 0:
|
||||||
top_mention = top_key(self.mention_others)
|
top_mention = top_key(self.mention_others)
|
||||||
mention_sum = sum(self.mention_others.values())
|
mention_sum = val_sum(self.mention_others)
|
||||||
if member_specific:
|
if member_specific:
|
||||||
ret += [
|
ret += [
|
||||||
f"- **mentioned others**: {plural(mention_sum, 'time')} ({percent(mention_sum/self.mention_count)} of {type})",
|
f"- **mentioned others**: {plural(mention_sum, 'time')} ({percent(mention_sum/self.mention_count)} of {type})",
|
||||||
@@ -72,7 +72,7 @@ class Presence:
|
|||||||
]
|
]
|
||||||
|
|
||||||
if len(self.reactions) > 0:
|
if len(self.reactions) > 0:
|
||||||
total_used = sum(self.reactions.values())
|
total_used = val_sum(self.reactions)
|
||||||
top_reaction = top_key(self.reactions)
|
top_reaction = top_key(self.reactions)
|
||||||
ret += [
|
ret += [
|
||||||
f"- **reactions**: {plural(total_used, 'time')}",
|
f"- **reactions**: {plural(total_used, 'time')}",
|
||||||
|
|||||||
+5
-1
@@ -1,4 +1,4 @@
|
|||||||
from typing import List, Dict, Union, Optional
|
from typing import List, Dict, Union, Optional, Any
|
||||||
import os
|
import os
|
||||||
import logging
|
import logging
|
||||||
import discord
|
import discord
|
||||||
@@ -91,6 +91,10 @@ def top_key(d: Dict[Union[str, int], int]) -> Union[str, int]:
|
|||||||
return sorted(d, key=lambda k: d[k])[-1]
|
return sorted(d, key=lambda k: d[k])[-1]
|
||||||
|
|
||||||
|
|
||||||
|
def val_sum(d: Dict[Any, int]) -> int:
|
||||||
|
return sum(d.value())
|
||||||
|
|
||||||
|
|
||||||
# MESSAGE FORMATTING
|
# MESSAGE FORMATTING
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user