From d48d576891bfa9a98734ae8de1b1bc93e931f2ae Mon Sep 17 00:00:00 2001 From: Trygve Date: Sun, 24 Sep 2023 22:33:25 +0200 Subject: [PATCH] Ferdig med uke 2 --- uke2.py | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/uke2.py b/uke2.py index 7f96c14..7090b4b 100644 --- a/uke2.py +++ b/uke2.py @@ -27,9 +27,15 @@ def table_from_votes(file_path, num=None): # Combine all the local results into a list of national party results p_codes = [] parties = [] + total_votes = 0 + # Not all parties are in all distrcts. Therofore i need to get the total amount of voters from a party that is everywhere + for p in local_parties: + if p.code == 'A': + total_votes += p.voters + # Put all the kommuneparties into fylker for p in local_parties: if p.code not in p_codes: - party = Party('Alle', p.code, p.name, p.voters, p.votes) + party = Party('Alle', p.code, p.name, total_votes, p.votes) parties.append(party) p_codes.append(p.code) else: @@ -39,10 +45,13 @@ def table_from_votes(file_path, num=None): parties.sort(key=lambda x: x.percent(), reverse=True) # Create the table - t = '{:^25}|{:^10}|{:^10}\n'.format('Parti', 'Prosent', 'Stemmer') + t = '{:^8}|{:^8}|{:^10}\n'.format('Parti', 'Prosent', 'Stemmer') t += ("-"*len(t)+"\n") for n, p in enumerate(parties): - t += (f'{p.code:^25}|{p.percent():^10.2f}|{p.votes:^10}\n') + if p.percent() > 4.0: + t += (f'\033[1m{p.code:^8}|{p.percent():^8.2f}|{p.votes:^10}\033[0m\n') + else: + t += (f'{p.code:^8}|{p.percent():^8.2f}|{p.votes:^10}\n') if n == num: break; return(t) @@ -64,6 +73,7 @@ def get_friends(text): def main(): print(table_from_votes('2021-09-14_party distribution_1_st_2021.csv')) + print(table_from_votes('2021-09-14_party distribution_1_st_2021.csv', 3)) text = [ 'Ali and Per and friends.',