>>> from collita import extra Algunes collites abans i després de la 'pedra': ----------------------------------------------- >>> lC1 = [ (100, 101), (200, 201), (300, 301), 'pedra', (400, 401), (500, 501) ] >>> r = extra(lC1) >>> r # doctesttag: +TAG=1_collita-una_pedregada (600, 3, 900, 2) >>> lC2 = [ (100, 101), (200, 201), 'pedra', (300, 301), (400, 401), (500, 501) ] >>> r = extra(lC2) >>> r # doctesttag: +TAG=1_collita-una_pedregada (300, 2, 1200, 3) >>> lC3 = [ (100, 101), 'pedra', (200, 201), (300, 301), (400, 401), (500, 501) ] >>> r = extra(lC3) >>> r # doctesttag: +TAG=1_collita-una_pedregada (100, 1, 1400, 4) >>> lC4 = [ (100, 101), (200, 201), (300, 301), (400, 401), 'pedra', (500, 501) ] >>> r = extra(lC4) >>> r # doctesttag: +TAG=1_collita-una_pedregada (1000, 4, 500, 1) >>> lC5 = [ (100, 101), (200, 201), 'pedra', (300, 301), (400, 401) ] >>> r = extra(lC5) >>> r # doctesttag: +TAG=1_collita-una_pedregada (300, 2, 700, 2) No hi ha collita després de la 'pedra': --------------------------------------- >>> lCd0 = [ (100, 101), (200, 201), (300, 301), 'pedra'] >>> r = extra(lCd0) >>> r # doctesttag: +TAG=1_collita-una_pedregada (600, 3, 0, 0) No hi ha collita abans de la 'pedra': ------------------------------------- >>> lCa0 = [ 'pedra', (100, 101), (200, 201)] >>> r = extra(lCa0) >>> r # doctesttag: +TAG=1_collita-una_pedregada (0, 0, 300, 2) Només una collita abans i després de la 'pedra': ------------------------------------------------ >>> lCa1d1 = [ (100, 101), 'pedra', (200, 201) ] >>> r = extra(lCa1d1) >>> r # doctesttag: +TAG=1_collita-una_pedregada (100, 1, 200, 1) Més d'una 'pedra': ------------------ >>> lCpp = [ (100, 101), (200, 201), 'pedra', (300, 301), 'pedra', (400, 401) ] >>> r = extra(lCpp) >>> r # doctesttag: +TAG=1_collita-cap_pedregada_o_mes_d_una (-1, -1, -1, -1) Cap 'pedra': ------------ >>> lCp0 = [ (100, 101), (200, 201), (300, 301), (400, 401) ] >>> r = extra(lCp0) >>> r # doctesttag: +TAG=1_collita-cap_pedregada_o_mes_d_una (-1, -1, -1, -1) >>> from gols import gols_computa >>> gljdrs = {} >>> gols_computa(gljdrs, []) >>> if gljdrs != {}: ... print(gljdrs) # doctesttag: +TAG=2_gols-1_gols_computa-llista_buida >>> gljdrs = {} >>> L = [('H', 4, False)] >>> gols_computa(gljdrs, L) >>> if gljdrs != {'H': [1, 0]}: ... print(gljdrs) # doctesttag: +TAG=2_gols-1_gols_computa-llista_no_buida >>> gljdrs = {} >>> L = [('H', 4, False), ('K', 78, False)] >>> gols_computa(gljdrs, L) >>> if gljdrs != {'H': [1, 0], 'K': [1, 0]}: ... print(gljdrs) # doctesttag: +TAG=2_gols-1_gols_computa-llista_no_buida >>> gljdrs = {} >>> L = [('H', 4, True), ('H', 37, True), ('H', 77, True)] >>> gols_computa(gljdrs, L) >>> if gljdrs != {'H': [3, 3]}: ... print(gljdrs) # doctesttag: +TAG=2_gols-1_gols_computa-llista_no_buida >>> gljdrs = {} >>> L = [('H', 4, False), ('H', 37, False), ('H', 77, False)] >>> gols_computa(gljdrs, L) >>> if gljdrs != {'H': [3, 0]}: ... print(gljdrs) # doctesttag: +TAG=2_gols-1_gols_computa-llista_no_buida >>> gljdrs = {'H': [1, 0], 'K': [1, 0]} >>> L = [('Ms', 34, False), ('A', 39, False), ('A', 69, True)] >>> gols_computa(gljdrs, L) >>> if gljdrs != {'H': [1, 0], 'K': [1, 0], 'Ms': [1, 0], 'A': [2, 1]}: ... print(gljdrs) # doctesttag: +TAG=2_gols-1_gols_computa-llista_no_buida >>> gljdrs = {'H': [1, 0], 'K': [1, 0]} >>> L = [('Ms', 34, True), ('K', 39, True), ('H', 69, True)] >>> gols_computa(gljdrs, L) >>> if gljdrs != {'H': [2, 1], 'K': [2, 1], 'Ms': [1, 1]}: ... print(gljdrs) # doctesttag: +TAG=2_gols-1_gols_computa-llista_no_buida >>> gljdrs = {'H': [1, 0], 'K': [1, 0], 'Ms': [1, 0], 'A': [2, 0]} >>> L = [('Ms', 22, True), ('DM', 35, False), ('Mb', 80, True), ('Mb', 81, False), ('Ms', 108, False), ('Mb', 117, False)] >>> gols_computa(gljdrs, L) >>> if gljdrs != {'H': [1, 0], 'K': [1, 0], 'Ms': [3, 1], 'A': [2, 0], 'DM': [1, 0], 'Mb': [3, 1]}: ... print(gljdrs) # doctesttag: +TAG=2_gols-1_gols_computa-llista_no_buida >>> gljdrs = {'H': [1, 0], 'K': [1, 0], 'Ms': [3, 1], 'A': [2, 0], 'DM': [1, 0], 'Mb': [3, 1]} >>> L = [('Ms', 22, True), ('DM', 35, False), ('B', 80, True), ('B', 81, False), ('Ms', 108, False), ('B', 117, False)] >>> gols_computa(gljdrs, L) >>> if gljdrs != {'H': [1, 0], 'K': [1, 0], 'Ms': [5, 2], 'A': [2, 0], 'DM': [2, 0], 'Mb': [3, 1], 'B': [3, 1]}: ... print(gljdrs) # doctesttag: +TAG=2_gols-1_gols_computa-llista_no_buida >>> gljdrs = {'H': [1, 0], 'K': [1, 0], 'Ms': [5, 2], 'A': [2, 0], 'DM': [2, 0], 'Mb': [3, 1], 'B': [3, 1]} >>> L = [('H', 22, True), ('C', 35, False), ('K', 80, True), ('K', 81, False), ('H', 108, False), ('K', 117, False)] >>> gols_computa(gljdrs, L) >>> if gljdrs != {'H': [3, 1], 'K': [4, 1], 'Ms': [5, 2], 'A': [2, 0], 'DM': [2, 0], 'Mb': [3, 1], 'B': [3, 1], 'C': [1, 0]}: ... print(gljdrs) # doctesttag: +TAG=2_gols-1_gols_computa-llista_no_buida >>> from gols import golejadors >>> prtts = {} >>> gljdrs = golejadors(prtts) >>> gljdrs # doctesttag: +TAG=2_gols-2_golejadors-dic_buit {} >>> prtts = { ... ('AR', ' FR'): []} >>> gljdrs = golejadors(prtts) >>> gljdrs # doctesttag: +TAG=2_gols-2_golejadors-dic_buit {} >>> prtts = { ... ('AR', ' FR'): [('Mb', 80, True), ('Mb', 81, True), ('Mb', 117, True)]} >>> gljdrs = golejadors(prtts) >>> if gljdrs != {'Mb': [3, 3]}: ... print(gljdrs ) # doctesttag: +TAG=2_gols-2_golejadors-dic_no_buit >>> prtts = { ... ('AR', ' FR'): [('Ms', 22, True), ('DM', 35, False), ('Mb', 80, True), ('Mb', 81, False), ('Ms', 108, False), ('Mb', 117, False)]} >>> gljdrs = golejadors(prtts) >>> if gljdrs != {'Ms': [2, 1], 'DM': [1, 0], 'Mb': [3, 1]}: ... print(gljdrs ) # doctesttag: +TAG=2_gols-2_golejadors-dic_no_buit >>> prtts = { ... ('AR', ' FR'): [('Ms', 22, True), ('DM', 35, False), ('Mb', 80, True), ('Mb', 81, False), ('Ms', 108, False), ('Mb', 117, False)], ... ('FR', ' AR'): [('Ms', 22, True), ('DM', 35, False), ('Mb', 80, True), ('Mb', 81, False), ('Ms', 108, False), ('Mb', 117, False)] ... } >>> gljdrs = golejadors(prtts) >>> if gljdrs != {'Ms': [4, 2], 'DM': [2, 0], 'Mb': [6, 2]}: ... print(gljdrs ) # doctesttag: +TAG=2_gols-2_golejadors-dic_no_buit >>> prtts = { ... ('FR', 'MR'): [('H', 4, False), ('K', 78, False)], ... ('AR', 'CR'): [('Ms', 34, False), ('A', 39, False), ('A', 69, False)], ... ('AR', ' FR'): [('Ms', 22, True), ('DM', 35, False), ('Mb', 80, True), ('Mb', 81, False), ('Ms', 108, False), ('Mb', 117, False)]} >>> gljdrs = golejadors(prtts) >>> if gljdrs != {'H': [1, 0], 'K': [1, 0], 'Ms': [3, 1], 'A': [2, 0],'DM': [1, 0], 'Mb': [3, 1]}: ... print(gljdrs ) # doctesttag: +TAG=2_gols-2_golejadors-dic_no_buit >>> prtts = { ... ('FR', 'MR'): [('H', 4, False), ('K', 78, False)], ... ('AR', 'CR'): [('Ms', 34, False), ('A', 39, False), ('A', 69, False)], ... ('AR', ' FR'): [('Ms', 22, True), ('DM', 35, False), ('Mb', 80, True), ('Mb', 81, False), ('Ms', 108, False), ('Mb', 117, False)], ... ('X', 'Y'): [('B', 1, True), ('H', 2, True), ('Ms', 3, False)]} >>> gljdrs = golejadors(prtts) >>> if gljdrs != {'B': [1, 1], 'H': [2, 1], 'K': [1, 0], 'Ms': [4, 1], 'A': [2, 0],'DM': [1, 0], 'Mb': [3, 1]}: ... print(gljdrs ) # doctesttag: +TAG=2_gols-2_golejadors-dic_no_buit >>> prtts = { ... ('FR', 'MR'): [('H', 4, False), ('K', 78, False)], ... ('AR', 'CR'): [('Ms', 34, False), ('A', 39, False), ('A', 69, False)], ... ('AR', ' FR'): [('Ms', 22, True), ('DM', 35, False), ('Mb', 80, True), ('Mb', 81, False), ('Ms', 108, False), ('Mb', 117, False)], ... ('X', 'Y'): [('B', 1, True), ('H', 2, True), ('Ms', 3, False)], ... ('Y', 'Z'): [('B', 1, False), ('B', 2, False)]} >>> gljdrs = golejadors(prtts) >>> if gljdrs != {'B': [3, 1], 'H': [2, 1], 'K': [1, 0], 'Ms': [4, 1], 'A': [2, 0],'DM': [1, 0], 'Mb': [3, 1]}: ... print(gljdrs ) # doctesttag: +TAG=2_gols-2_golejadors-dic_no_buit >>> prtts = { ... ('FR', 'MR'): [('H', 4, False), ('K', 78, False)], ... ('AR', 'CR'): [('Ms', 34, False), ('A', 39, False), ('A', 69, False)], ... ('AR', ' FR'): [('Ms', 22, True), ('DM', 35, False), ('Mb', 80, True), ('Mb', 81, False), ('Ms', 108, False), ('Mb', 117, False)], ... ('X', 'Y'): [('B', 1, True), ('H', 2, True), ('Ms', 3, False)], ... ('Y', 'Z'): [('B', 1, False), ('B', 2, False)], ... ('X', 'X'): [('K', 1, True), ('K', 2, True), ('Ms', 3, False), ('Ms', 4, False)]} >>> gljdrs = golejadors(prtts) >>> if gljdrs != {'B': [3, 1], 'H': [2, 1], 'K': [3, 2], 'Ms': [6, 1], 'A': [2, 0],'DM': [1, 0], 'Mb': [3, 1]}: ... print(gljdrs ) # doctesttag: +TAG=2_gols-2_golejadors-dic_no_buit >>> prtts = { ... ('FR', 'MR'): [('H', 4, False), ('K', 78, False)], ... ('AR', 'CR'): [('Ms', 34, False), ('A', 39, False), ('A', 69, False)], ... ('AR', ' FR'): [('Ms', 22, True), ('DM', 35, False), ('Mb', 80, True), ('Mb', 81, False), ('Ms', 108, False), ('Mb', 117, False)], ... ('X', 'Y'): [('B', 1, True), ('H', 2, True), ('Ms', 3, False)], ... ('Y', 'Z'): [('B', 1, False), ('B', 2, False)], ... ('X', 'X'): [('K', 1, True), ('K', 2, True), ('Ms', 3, False), ('Ms', 4, False)], ... ('Z', 'T'): [('A', 1, True)]} >>> gljdrs = golejadors(prtts) >>> if gljdrs != {'B': [3, 1], 'H': [2, 1], 'K': [3, 2], 'Ms': [6, 1], 'A': [3, 1],'DM': [1, 0], 'Mb': [3, 1]}: ... print(gljdrs ) # doctesttag: +TAG=2_gols-2_golejadors-dic_no_buit >>> from vacunes import filtra_fitxer Creació del fitxer de dades 'v1.txt' ------------------------------------ >>> s= "Dona;BAIX CAMP;3;07/01/2022;BioNTech / Pfizer\nHome;CONCA DE BARBERA;1;01/04/2021;Oxford / AstraZeneca\nHome;RIPOLLES;1;15/04/2021;BioNTech / Pfizer\nHome;OSONA;2;01/03/2022;Moderna / Lonza\nHome;VALLES ORIENTAL;1;23/07/2021;No administrada\nHome;PLA D'URGELL;2;03/08/2021;BioNTech / Pfizer\nDona;VALLES ORIENTAL;1;01/04/2021;Oxford / AstraZeneca\nHome;BAIX LLOBREGAT;2;01/04/2021;BioNTech / Pfizer\nHome;SEGRIA;2;05/10/2021;BioNTech / Pfizer\nHome;VALLES ORIENTAL;1;05/05/2021;Oxford / AstraZeneca\nHome;ALT EMPORDA;2;01/04/2021;BioNTech / Pfizer\nHome;GARROTXA;1;15/04/2021;BioNTech / Pfizer\nDona;MARESME;2;18/03/2021;BioNTech / Pfizer\nDona;TARRAGONES;1;15/04/2021;Moderna / Lonza\nHome;BARCELONES;1;12/01/2021;J&J / Janssen\nHome;BAGES;2;30/11/2021;BioNTech / Pfizer\nDona;VALLES ORIENTAL;2;03/08/2021;Oxford / AstraZeneca\nHome;BAGES;1;01/04/2021;BioNTech / Pfizer\nHome;ALT PENEDES;1;01/04/2021;Oxford / AstraZeneca\n" >>> with open('v1.txt','w') as f: ... n = f.write(s) Test per v1.txt, any 2021 -------------------------- >>> filtra_fitxer('v1.txt','r1_2021.txt',2021) >>> with open('r1_2021.txt') as f: ... s = f.read() >>> print(s) # doctesttag: +TAG=3_vacunes-1_filtra_fitxer Home;CONCA DE BARBERA;Oxford / AstraZeneca Home;RIPOLLES;BioNTech / Pfizer Home;VALLES ORIENTAL;No administrada Home;PLA D'URGELL;BioNTech / Pfizer Dona;VALLES ORIENTAL;Oxford / AstraZeneca Home;BAIX LLOBREGAT;BioNTech / Pfizer Home;SEGRIA;BioNTech / Pfizer Home;VALLES ORIENTAL;Oxford / AstraZeneca Home;ALT EMPORDA;BioNTech / Pfizer Home;GARROTXA;BioNTech / Pfizer Dona;MARESME;BioNTech / Pfizer Dona;TARRAGONES;Moderna / Lonza Home;BARCELONES;J&J / Janssen Home;BAGES;BioNTech / Pfizer Dona;VALLES ORIENTAL;Oxford / AstraZeneca Home;BAGES;BioNTech / Pfizer Home;ALT PENEDES;Oxford / AstraZeneca Test per v1.txt, any 2022 -------------------------- >>> filtra_fitxer('v1.txt','r1_2022.txt',2022) >>> with open('r1_2022.txt') as f: ... s = f.read() >>> print(s) # doctesttag: +TAG=3_vacunes-1_filtra_fitxer Dona;BAIX CAMP;BioNTech / Pfizer Home;OSONA;Moderna / Lonza Creació del fitxer de dades 'v2.txt' ------------------------------------ >>> s = 'Home;VALLES ORIENTAL;2;01/03/2022;BioNTech / Pfizer\nDona;VALLES OCCIDENTAL;2;10/06/2021;BioNTech / Pfizer\nDona;VALLES ORIENTAL;1;14/01/2021;BioNTech / Pfizer\nHome;ALT EMPORDA;1;19/08/2021;BioNTech / Pfizer\nDona;ALT PENEDES;2;29/05/2021;Oxford / AstraZeneca\nHome;BAIX LLOBREGAT;2;05/10/2021;Moderna / Lonza\nHome;VALLES ORIENTAL;1;03/04/2021;Oxford / AstraZeneca\nHome;OSONA;1;02/04/2021;Oxford / AstraZeneca\nHome;SEGARRA;2;29/06/2021;Oxford / AstraZeneca\nHome;MOIANÈS;1;02/04/2021;Oxford / AstraZeneca\nDona;VALLES OCCIDENTAL;1;28/05/2021;Oxford / AstraZeneca\nDona;SELVA;3;05/10/2021;Moderna / Lonza\nDona;RIPOLLES;1;04/03/2021;Oxford / AstraZeneca\nHome;BAIX EMPORDA;1;29/06/2021;BioNTech / Pfizer\nDona;VALLES OCCIDENTAL;3;01/03/2022;Moderna / Lonza\nHome;VALLES OCCIDENTAL;1;01/03/2022;Moderna / Lonza\nDona;SELVA;1;01/04/2021;BioNTech / Pfizer\nDona;OSONA;2;29/05/2021;BioNTech / Pfizer\nHome;VALLES OCCIDENTAL;1;07/09/2021;Moderna / Lonza\nDona;BAIX LLOBREGAT;1;27/02/2021;Oxford / AstraZeneca\nDona;MONTSIA;1;19/05/2021;Oxford / AstraZeneca\nHome;BARCELONES;1;18/03/2021;Oxford / AstraZeneca\nHome;BAIX LLOBREGAT;1;29/05/2021;BioNTech / Pfizer\nDona;BAIX LLOBREGAT;1;24/02/2021;Oxford / AstraZeneca\nHome;VALLES ORIENTAL;2;05/10/2021;Oxford / AstraZeneca\nHome;BAIX LLOBREGAT;1;08/09/2021;BioNTech / Pfizer\nHome;VALLES OCCIDENTAL;2;25/02/2022;Moderna / Lonza\nDona;OSONA;1;02/04/2021;Oxford / AstraZeneca\nHome;MARESME;2;07/01/2022;Moderna / Lonza\nDona;BERGUEDA;2;04/05/2021;BioNTech / Pfizer\nDona;OSONA;1;02/04/2021;Oxford / AstraZeneca\nHome;GIRONES;2;29/06/2021;Oxford / AstraZeneca\nHome;MONTSIA;2;05/05/2021;BioNTech / Pfizer\nHome;BAIX EBRE;1;02/04/2021;Oxford / AstraZeneca\nDona;GARRIGUES;2;28/06/2021;Oxford / AstraZeneca\nHome;URGELL;2;08/09/2021;Moderna / Lonza\nHome;SELVA;1;07/01/2022;BioNTech / Pfizer\nHome;MARESME;1;15/04/2021;Moderna / Lonza\nDona;TARRAGONES;2;09/04/2021;BioNTech / Pfizer\nHome;GARROTXA;3;01/03/2022;Moderna / Lonza\n' >>> with open('v2.txt','w') as f: ... n = f.write(s) Test per v2.txt, any 2021 -------------------------- >>> filtra_fitxer('v2.txt','r2_2021.txt',2021) >>> with open('r2_2021.txt') as f: ... s = f.read() >>> print(s) # doctesttag: +TAG=3_vacunes-1_filtra_fitxer Dona;VALLES OCCIDENTAL;BioNTech / Pfizer Dona;VALLES ORIENTAL;BioNTech / Pfizer Home;ALT EMPORDA;BioNTech / Pfizer Dona;ALT PENEDES;Oxford / AstraZeneca Home;BAIX LLOBREGAT;Moderna / Lonza Home;VALLES ORIENTAL;Oxford / AstraZeneca Home;OSONA;Oxford / AstraZeneca Home;SEGARRA;Oxford / AstraZeneca Home;MOIANÈS;Oxford / AstraZeneca Dona;VALLES OCCIDENTAL;Oxford / AstraZeneca Dona;SELVA;Moderna / Lonza Dona;RIPOLLES;Oxford / AstraZeneca Home;BAIX EMPORDA;BioNTech / Pfizer Dona;SELVA;BioNTech / Pfizer Dona;OSONA;BioNTech / Pfizer Home;VALLES OCCIDENTAL;Moderna / Lonza Dona;BAIX LLOBREGAT;Oxford / AstraZeneca Dona;MONTSIA;Oxford / AstraZeneca Home;BARCELONES;Oxford / AstraZeneca Home;BAIX LLOBREGAT;BioNTech / Pfizer Dona;BAIX LLOBREGAT;Oxford / AstraZeneca Home;VALLES ORIENTAL;Oxford / AstraZeneca Home;BAIX LLOBREGAT;BioNTech / Pfizer Dona;OSONA;Oxford / AstraZeneca Dona;BERGUEDA;BioNTech / Pfizer Dona;OSONA;Oxford / AstraZeneca Home;GIRONES;Oxford / AstraZeneca Home;MONTSIA;BioNTech / Pfizer Home;BAIX EBRE;Oxford / AstraZeneca Dona;GARRIGUES;Oxford / AstraZeneca Home;URGELL;Moderna / Lonza Home;MARESME;Moderna / Lonza Dona;TARRAGONES;BioNTech / Pfizer Test per v2.txt, any 2022 -------------------------- >>> filtra_fitxer('v2.txt','r2_2022.txt',2022) >>> with open('r2_2022.txt') as f: ... s = f.read() >>> print(s) # doctesttag: +TAG=3_vacunes-1_filtra_fitxer Home;VALLES ORIENTAL;BioNTech / Pfizer Dona;VALLES OCCIDENTAL;Moderna / Lonza Home;VALLES OCCIDENTAL;Moderna / Lonza Home;VALLES OCCIDENTAL;Moderna / Lonza Home;MARESME;Moderna / Lonza Home;SELVA;BioNTech / Pfizer Home;GARROTXA;Moderna / Lonza >>> from vacunes import classifica Creació del fitxer de test vf1.txt ---------------------------------- >>> s = 'Dona;GARROTXA;Moderna / Lonza\nHome;VALLES ORIENTAL;BioNTech / Pfizer\nDona;VALLES OCCIDENTAL;Moderna / Lonza\nHome;VALLES OCCIDENTAL;Moderna / Lonza\nHome;VALLES OCCIDENTAL;Moderna / Lonza\nHome;MARESME;Moderna / Lonza\nHome;SELVA;BioNTech / Pfizer\nHome;GARROTXA;Moderna / Lonza\n' >>> with open('vf1.txt','w') as f: ... n = f.write(s) Test pel fitxer vf1.txt ------------------------ >>> dicc = classifica('vf1.txt') >>> if dicc != {('VALLES ORIENTAL', 'BioNTech / Pfizer'): [0, 1], ('VALLES OCCIDENTAL', 'Moderna / Lonza'): [1, 2], ('MARESME', 'Moderna / Lonza'): [0, 1], ('SELVA', 'BioNTech / Pfizer'): [0, 1], ('GARROTXA', 'Moderna / Lonza'): [1, 1]}: # doctesttag: +TAG=3_vacunes-2_classifica ... print(dicc) Creació del fitxer de test vf2.txt ---------------------------------- >>> s = "Dona;BAIX LLOBREGAT;Moderna / Lonza\nDona;BARCELONES;Moderna / Lonza\nDona;BAIX LLOBREGAT;Moderna / Lonza\nDona;BAIX PENEDES;BioNTech / Pfizer\nDona;BAIX LLOBREGAT;Moderna / Lonza\nDona;ANOIA;BioNTech / Pfizer\nHome;MARESME;Moderna / Lonza\nHome;ANOIA;Moderna / Lonza\nHome;BAIX LLOBREGAT;BioNTech / Pfizer\nDona;BARCELONES;Moderna / Lonza\nHome;VALLES ORIENTAL;BioNTech / Pfizer\nDona;VALLES ORIENTAL;BioNTech / Pfizer\nHome;BAIX LLOBREGAT;BioNTech / Pfizer\nHome;VALLES ORIENTAL;Moderna / Lonza\nDona;VALLES ORIENTAL;Moderna / Lonza\nHome;BARCELONES;Moderna / Lonza\nHome;GARRAF;Moderna / Lonza\nDona;BARCELONES;Moderna / Lonza\nDona;VALLES ORIENTAL;BioNTech / Pfizer\nDona;VALLES ORIENTAL;Moderna / Lonza\nDona;MARESME;Moderna / Lonza\nHome;ANOIA;BioNTech / Pfizer\nHome;ANOIA;BioNTech / Pfizer\nHome;OSONA;Moderna / Lonza\nHome;MARESME;Moderna / Lonza\nDona;BAIX LLOBREGAT;Moderna / Lonza\nDona;BARCELONES;Moderna / Lonza\nHome;RIBERA D'EBRE;Moderna / Lonza\nHome;OSONA;BioNTech / Pfizer\nHome;VALLES OCCIDENTAL;Moderna / Lonza\nHome;BAIX LLOBREGAT;BioNTech / Pfizer\n" >>> with open('vf2.txt','w') as f: ... n = f.write(s) Test pel fitxer vf2.txt ----------------------- >>> dicc = classifica('vf2.txt') >>> if dicc != {('BAIX LLOBREGAT', 'Moderna / Lonza'): [4, 0], ('BARCELONES', 'Moderna / Lonza'): [4, 1], ('BAIX PENEDES', 'BioNTech / Pfizer'): [1, 0], ('ANOIA', 'BioNTech / Pfizer'): [1, 2], ('MARESME', 'Moderna / Lonza'): [1, 2], ('ANOIA', 'Moderna / Lonza'): [0, 1], ('BAIX LLOBREGAT', 'BioNTech / Pfizer'): [0, 3], ('VALLES ORIENTAL', 'BioNTech / Pfizer'): [2, 1], ('VALLES ORIENTAL', 'Moderna / Lonza'): [2, 1], ('GARRAF', 'Moderna / Lonza'): [0, 1], ('OSONA', 'Moderna / Lonza'): [0, 1], ("RIBERA D'EBRE", 'Moderna / Lonza'): [0, 1], ('OSONA', 'BioNTech / Pfizer'): [0, 1], ('VALLES OCCIDENTAL', 'Moderna / Lonza'): [0, 1]}: # doctesttag: +TAG=3_vacunes-2_classifica ... print(dicc) Creació del fitxer de test vf3.txt ---------------------------------- >>> s = 'Dona;BAIX CAMP;BioNTech / Pfizer\nHome;OSONA;Moderna / Lonza\nDona;BAIX CAMP;BioNTech / Pfizer\n' >>> with open('vf3.txt','w') as f: ... n = f.write(s) Test pel fitxer vf3.txt ----------------------- >>> dicc = classifica('vf3.txt') >>> if dicc != {('BAIX CAMP', 'BioNTech / Pfizer'): [2, 0], ('OSONA', 'Moderna / Lonza'): [0, 1]}: # doctesttag: +TAG=3_vacunes-2_classifica ... print(dicc) Creació del fitxer de test vf4.txt ---------------------------------- >>> s = "Dona;BAIX LLOBREGAT;Moderna / Lonza\nDona;BARCELONES;Moderna / Lonza\nDona;BAIX LLOBREGAT;Moderna / Lonza\nDona;BAIX PENEDES;BioNTech / Pfizer\nDona;BAIX LLOBREGAT;Moderna / Lonza\nDona;MOIANÈS;BioNTech / Pfizer\nHome;MARESME;Moderna / Lonza\nHome;ANOIA;Moderna / Lonza\nHome;BAIX LLOBREGAT;BioNTech / Pfizer\nDona;BARCELONES;Moderna / Lonza\nHome;VALLES ORIENTAL;BioNTech / Pfizer\nDona;VALLES ORIENTAL;BioNTech / Pfizer\nHome;BAIX LLOBREGAT;BioNTech / Pfizer\nHome;VALLES ORIENTAL;Moderna / Lonza\nDona;VALLES ORIENTAL;Moderna / Lonza\nHome;BARCELONES;Moderna / Lonza\nHome;GARRAF;Moderna / Lonza\nDona;BARCELONES;Moderna / Lonza\nDona;VALLES ORIENTAL;BioNTech / Pfizer\nDona;VALLES ORIENTAL;Moderna / Lonza\nDona;MARESME;Moderna / Lonza\nHome;BERGUEDA;BioNTech / Pfizer\nHome;BERGUEDA;BioNTech / Pfizer\nHome;OSONA;Moderna / Lonza\nHome;MARESME;Moderna / Lonza\nDona;BAIX LLOBREGAT;Moderna / Lonza\nDona;BARCELONES;Moderna / Lonza\nHome;RIBERA D'EBRE;Moderna / Lonza\nHome;OSONA;BioNTech / Pfizer\nHome;VALLES OCCIDENTAL;Moderna / Lonza\nHome;BAIX LLOBREGAT;BioNTech / Pfizer\nHome;VALLES OCCIDENTAL;Moderna / Lonza\nHome;GARRAF;BioNTech / Pfizer\nDona;BARCELONES;No administrada\nHome;SEGARRA;Moderna / Lonza\nHome;MARESME;Moderna / Lonza\nDona;ALT PENEDES;BioNTech / Pfizer\nHome;ALT PENEDES;Moderna / Lonza\nHome;MARESME;BioNTech / Pfizer\nHome;VALLES OCCIDENTAL;Moderna / Lonza\nHome;VALLES OCCIDENTAL;Moderna / Lonza\nDona;BARCELONES;Moderna / Lonza\nDona;BAIX LLOBREGAT;Moderna / Lonza\nHome;BARCELONES;Moderna / Lonza\nDona;BARCELONES;BioNTech / Pfizer\nHome;BAIX EBRE;Moderna / Lonza\nDona;BARCELONES;Moderna / Lonza\nDona;MARESME;Moderna / Lonza\nDona;BARCELONES;BioNTech / Pfizer\nDona;BARCELONES;BioNTech / Pfizer\nHome;BARCELONES;BioNTech / Pfizer\nHome;GARROTXA;Moderna / Lonza\nHome;BAIX LLOBREGAT;Moderna / Lonza\nDona;TARRAGONES;Moderna / Lonza\nHome;VALLES OCCIDENTAL;Moderna / Lonza\nDona;BARCELONES;Moderna / Lonza\nDona;BARCELONES;Moderna / Lonza\nHome;VALLES OCCIDENTAL;Moderna / Lonza\nDona;BARCELONES;Moderna / Lonza\nHome;BAIX LLOBREGAT;Moderna / Lonza\nHome;BAIX LLOBREGAT;Moderna / Lonza\nHome;BARCELONES;BioNTech / Pfizer\nHome;GARRAF;BioNTech / Pfizer\nDona;MARESME;Moderna / Lonza\nDona;VALLES OCCIDENTAL;BioNTech / Pfizer\nHome;BAIX CAMP;BioNTech / Pfizer\nHome;BARCELONES;BioNTech / Pfizer\nHome;MARESME;Moderna / Lonza\nHome;ALT PENEDES;Moderna / Lonza\nHome;MARESME;Moderna / Lonza\nDona;BARCELONES;BioNTech / Pfizer\nHome;RIBERA D'EBRE;Moderna / Lonza\nHome;OSONA;BioNTech / Pfizer\nDona;BARCELONES;Moderna / Lonza\n" >>> with open('vf4.txt','w') as f: ... n = f.write(s) >>> dicc = classifica('vf4.txt') >>> if dicc != {('BAIX LLOBREGAT', 'Moderna / Lonza'): [5, 3], ('BARCELONES', 'Moderna / Lonza'): [10, 2], ('BAIX PENEDES', 'BioNTech / Pfizer'): [1, 0], ('MOIANÈS', 'BioNTech / Pfizer'): [1, 0], ('MARESME', 'Moderna / Lonza'): [3, 5], ('ANOIA', 'Moderna / Lonza'): [0, 1], ('BAIX LLOBREGAT', 'BioNTech / Pfizer'): [0, 3], ('VALLES ORIENTAL', 'BioNTech / Pfizer'): [2, 1], ('VALLES ORIENTAL', 'Moderna / Lonza'): [2, 1], ('GARRAF', 'Moderna / Lonza'): [0, 1], ('BERGUEDA', 'BioNTech / Pfizer'): [0, 2], ('OSONA', 'Moderna / Lonza'): [0, 1], ("RIBERA D'EBRE", 'Moderna / Lonza'): [0, 2], ('OSONA', 'BioNTech / Pfizer'): [0, 2], ('VALLES OCCIDENTAL', 'Moderna / Lonza'): [0, 6], ('GARRAF', 'BioNTech / Pfizer'): [0, 2], ('BARCELONES', 'No administrada'): [1, 0], ('SEGARRA', 'Moderna / Lonza'): [0, 1], ('ALT PENEDES', 'BioNTech / Pfizer'): [1, 0], ('ALT PENEDES', 'Moderna / Lonza'): [0, 2], ('MARESME', 'BioNTech / Pfizer'): [0, 1], ('BARCELONES', 'BioNTech / Pfizer'): [4, 3], ('BAIX EBRE', 'Moderna / Lonza'): [0, 1], ('GARROTXA', 'Moderna / Lonza'): [0, 1], ('TARRAGONES', 'Moderna / Lonza'): [1, 0], ('VALLES OCCIDENTAL', 'BioNTech / Pfizer'): [1, 0], ('BAIX CAMP', 'BioNTech / Pfizer'): [0, 1]}: # doctesttag: +TAG=3_vacunes-2_classifica ... print(dicc) >>> from integrals import integra >>> round(integra(1, 3, 1), 2) # doctesttag: +TAG=4_integrals-1_integra 25.82 >>> round(integra(1, 3, 20), 2) # doctesttag: +TAG=4_integrals-1_integra 26.86 >>> round(integra(1, 3, 40), 2) # doctesttag: +TAG=4_integrals-1_integra 26.86 >>> round(integra(3, 10, 1), 2) # doctesttag: +TAG=4_integrals-1_integra 621.01 >>> round(integra(3, 10, 20), 2) # doctesttag: +TAG=4_integrals-1_integra 676.37 >>> round(integra(10, 20, 8), 2) # doctesttag: +TAG=4_integrals-1_integra 4702.73 >>> round(integra(3, 20, 2), 2) # doctesttag: +TAG=4_integrals-1_integra 5185.26 >>> round(integra(3, 20, 20), 2) # doctesttag: +TAG=4_integrals-1_integra 5379.85 >>> round(integra(1, 20, 30), 2) # doctesttag: +TAG=4_integrals-1_integra 5407.53 >>> round(integra(5, 7, 50), 2) # doctesttag: +TAG=4_integrals-1_integra 152.86 >>> from integrals import quants_trossos >>> r = quants_trossos(1, 3, 0.1) >>> r # doctesttag: +TAG=4_integrals-2_quants_trossos 4 >>> r = quants_trossos(0, 5, 0.01) >>> r # doctesttag: +TAG=4_integrals-2_quants_trossos 45 >>> r = quants_trossos(0, 10, 0.01) >>> r # doctesttag: +TAG=4_integrals-2_quants_trossos 127 >>> r = quants_trossos(5, 10, 0.01) >>> r # doctesttag: +TAG=4_integrals-2_quants_trossos 45 >>> r = quants_trossos(1, 2, 0.001) >>> r # doctesttag: +TAG=4_integrals-2_quants_trossos 12 >>> r = quants_trossos(2, 10, 0.001) >>> r # doctesttag: +TAG=4_integrals-2_quants_trossos 291 >>> r = quants_trossos(1, 10, 0.001) >>> r # doctesttag: +TAG=4_integrals-2_quants_trossos 342 >>> r = quants_trossos(5, 7, 0.0001) >>> r # doctesttag: +TAG=4_integrals-2_quants_trossos 119 >>> r = quants_trossos(1, 2, 0.00001) >>> r # doctesttag: +TAG=4_integrals-2_quants_trossos 113 >>> r = quants_trossos(4, 6, 0.001) >>> r # doctesttag: +TAG=4_integrals-2_quants_trossos 41