======== Senglars ======== >>> from senglars import estudiSenglars >>> dZones = { 'montseny': ['pm78', 'pm99', 'pm103'], ... 'collserola': ['pco05'], ... 'ribagorça': ['pr13', 'pr24'], ... 'els ports': ['pep13', 'pep19'], ... "l'albera": ['pla02', 'pla17', 'pla25', 'pla26', 'pla29'], ... 'cadi': ['pca01', 'pca14', 'pca03', 'pca05'], ... 'garrotxa': ['pg07'], 'campus sud' : [] } >>> dRes0 = estudiSenglars([], dZones, 'campus sud', 9) >>> if dRes0 != {}: # doctesttag: +TAG=1_senglars ... print(dRes0) >>> lObs = [ ('pco05', '5/1 23:35', 3), ('pco05', '6/1 22:50', 4), ('pco05', '1/2 1:10', 5), ... ('pm78', '18/4 3:10', 7), ('pm78', '9/4 7:12', 2), ('pm99', '9/4 6:33', 3), ('pm103', '19/5 1:05', 5), ... ('pep19', '3/9 1:10', 5), ('pep19', '5/9 3:13', 2), ... ('pep13', '17/7 0:04', 4), ('pep13', '19/9 3:14', 3), ('pep13', '29/9 7:10', 2), ... ('pla29', '14/5 3:16', 5), ('pla29', '15/5 3:10', 2), ('pla02', '17/5 3:21', 3), ('pla26', '21/5 4:14', 4), ... ('pla25', '4/10 23:01', 7), ('pla25', '4/5 22:19', 4), ('pla17', '13/5 22:14', 9), ... ('pr13', '2/1 19:17', 5), ('pr24', '5/1 15:07', 4), ... ('pca01', '4/11 3:56', 3), ('pca05', '5/11 4:05', 9), ('pca01', '9/12 4:09', 5), ('pca14', '5/7 5:05', 2), ... ('pca14', '3/9 23:45', 2), ('pca14', '5/9 0:05', 3), ('pca14', '9/9 1:09', 5), ('pca14', '29/11 7:11', 1), ... ('pca19', '17/11 4:17', 1), ('pca03', '23/11 8:02', 4), ... ] La llista no és buida però no conté cap observació en els punts de la zona seleccionada ni del més seleccionat (cas 1a) ============================================================================================================== >>> dResOK1 = { 'pg07': 0 } >>> dRes1 = estudiSenglars(lObs, dZones, 'garrotxa', 6) >>> if dRes1 != dResOK1: # doctesttag: +TAG=1_senglars ... print(dRes1) La llista no és buida però no conté cap observació en els punts de la zona seleccionada peró sí en el més seleccionat (cas 1b) ===================================================================================================================== >>> dResOK2 = { 'pg07': 0 } >>> dRes2 = estudiSenglars(lObs, dZones, 'garrotxa', 2) >>> if dRes2 != dResOK2: # doctesttag: +TAG=1_senglars ... print(dRes2) La llista no és buida i conté observacions en algun punt de la zona seleccionada peró no en el més seleccionat (cas 1c) ============================================================================================================== >>> dResOK3 = { 'pco05': 0 } >>> dRes3 = estudiSenglars(lObs, dZones, 'collserola', 5) >>> if dRes3 != dResOK3: # doctesttag: +TAG=1_senglars ... print(dRes3) La llista no és buida i conté observacions en algun punt de la zona seleccionada i en el mes seleccionat (cas 2) ======================================================================================================== Només hi ha un punt seleccionat (cas 2a) ------------------------------- El punt surt només una vegada a la llista (cas 2a.1) +++++++++++++++++++++++++++++++++++++++++ >>> dResOK4 = { 'pco05': 5 } >>> dRes4 = estudiSenglars(lObs, dZones, 'collserola', 2) >>> if dRes4 != dResOK4: # doctesttag: +TAG=1_senglars ... print(dRes4) El punt surt varies vegades a la llista (cas 2a.2) +++++++++++++++++++++++++++++++++++++++ >>> dResOK5 = { 'pco05': 7 } >>> dRes5 = estudiSenglars(lObs, dZones, 'collserola', 1) >>> if dRes5 != dResOK5: # doctesttag: +TAG=1_senglars ... print(dRes5) Hi ha més d'un punt seleccionat (cas 2b) ------------------------------- Els punts seleccionats només surten una vegada a la llista (cas 2b.1) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ >>> dResOK6 = { 'pr13': 5, 'pr24': 4 } >>> dRes6 = estudiSenglars(lObs, dZones, 'ribagorça', 1) >>> if dRes6 != dResOK6: # doctesttag: +TAG=1_senglars ... print(dRes6) Els punts seleccionats surten varies vegades a la llista (cas 2b.2) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ >>> dResOK7 = { 'pep13': 5, 'pep19': 7 } >>> dRes7 = estudiSenglars(lObs, dZones, 'els ports', 9) >>> if dRes7 != dResOK7: # doctesttag: +TAG=1_senglars ... print(dRes7) >>> dResOK8 = { 'pca01': 3, 'pca14': 1, 'pca03' : 4, 'pca05' : 9 } >>> dRes8 = estudiSenglars(lObs, dZones, 'cadi', 11) >>> if dRes8 != dResOK8: # doctesttag: +TAG=1_senglars ... print(dRes8) >>> dResOK9 = { 'pla02': 3, 'pla17': 9, 'pla25': 4, 'pla26':4, 'pla29': 7 } >>> dRes9 = estudiSenglars(lObs, dZones, "l'albera", 5) >>> if dRes9 != dResOK9: # doctesttag: +TAG=1_senglars ... print(dRes9) >>> dResOK10 = { 'pep13': 4, 'pep19': 0 } >>> dRes10 = estudiSenglars(lObs, dZones, 'els ports', 7) >>> if dRes10 != dResOK10: # doctesttag: +TAG=1_senglars ... print(dRes10) >>> dResOK11 = { 'pm78': 9, 'pm99': 3, 'pm103' : 0 } >>> dRes11 = estudiSenglars(lObs, dZones, 'montseny', 4) >>> if dRes11 != dResOK11: # doctesttag: +TAG=1_senglars ... print(dRes11) >>> dResOK12 = { 'pca01': 5, 'pca14': 0, 'pca03' : 0, 'pca05' : 0 } >>> dRes12 = estudiSenglars(lObs, dZones, 'cadi', 12) >>> if dRes12 != dResOK12: # doctesttag: +TAG=1_senglars ... print(dRes12) >>> dResOK13 = { 'pr13': 0, 'pr24': 0 } >>> dRes13 = estudiSenglars(lObs, dZones, 'ribagorça', 5) >>> if dRes13 != dResOK13: # doctesttag: +TAG=1_senglars ... print(dRes13) ============================ Canvi climàtic: tracta_linia ============================ >>> from canvi_climatic import tracta_linia 4 verds ------- >>> tracta_linia('gualba;verd;verd;verd;verd\n') # doctesttag: +TAG=2_canvi_climatic-1_tracta_linia ('gualba', 4, 0) >>> tracta_linia('el papiol;verd;verd;verd;verd\n') # doctesttag: +TAG=2_canvi_climatic-1_tracta_linia ('el papiol', 4, 0) 4 vermells ---------- >>> tracta_linia('barcelona;vermell;vermell;vermell;vermell\n') # doctesttag: +TAG=2_canvi_climatic-1_tracta_linia ('barcelona', 0, 4) >>> tracta_linia('el papiol;vermell;vermell;vermell;vermell\n') # doctesttag: +TAG=2_canvi_climatic-1_tracta_linia ('el papiol', 0, 4) Cap verd, cap vermell --------------------- >>> tracta_linia('tarragona;groc;gris;groc;gris\n') # doctesttag: +TAG=2_canvi_climatic-1_tracta_linia ('tarragona', 0, 0) >>> tracta_linia('el papiol;gris;groc;groc;gris\n') # doctesttag: +TAG=2_canvi_climatic-1_tracta_linia ('el papiol', 0, 0) algun verd, algun vermell ------------------------- >>> tracta_linia('lleida;vermell;verd;gris;verd\n') # doctesttag: +TAG=2_canvi_climatic-1_tracta_linia ('lleida', 2, 1) >>> tracta_linia('alcarras;verd;gris;vermell;groc\n') # doctesttag: +TAG=2_canvi_climatic-1_tracta_linia ('alcarras', 1, 1) amb verd al nom de la població ------------------------------ >>> tracta_linia('vilaverd;gris;verd;verd;verd\n') # doctesttag: +TAG=2_canvi_climatic-1_tracta_linia ('vilaverd', 3, 0) sense \n al final ----------------- >>> tracta_linia('vilaller;verd;groc;groc;verd') # doctesttag: +TAG=2_canvi_climatic-1_tracta_linia ('vilaller', 2, 0) =============================== Canvi climàtic: millors_pitjors =============================== >>> import os >>> from canvi_climatic import millors_pitjors llista lA: cap millor, cap pitjor --------------------------------- >>> lA = [ 'a1;verd;vermell;verd;verd', ... 'a2;verd;verd;verd;gris' ] llista lB: 1 millor, 1 pitjor, 2 "normals" -------------------------------------------- >>> lB = [ 'b1;groc;verd;verd;vermell', ... 'b2;verd;verd;verd;verd', ... 'b3;vermell;vermell;vermell;vermell', ... 'b4;gris;gris;verd;vermell' ] llista lC: 2 millors, 2 pitjors, 2 "normals" -------------------------------------------- >>> lC = [ 'c1;groc;verd;groc;vermell', ... 'c2;verd;verd;verd;verd', ... 'c3;vermell;vermell;vermell;vermell', ... 'c4;verd;verd;verd;verd', ... 'c5;vermell;vermell;vermell;vermell', ... 'c6;groc;gris;groc;vermell' ] llista lD: 2 millors, 2 pitjors, 2 "normals" -------------------------------------------- >>> lD = [ 'd1;verd;verd;verd;verd' ... 'd2;vermell;groc;verd;vermell', ... 'd3;verd;verd;verd;vermell', ... 'd4;vermell;vermell;vermell;vermell', ... 'd5;vermell;vermell;vermell;vermell', ... 'd6;verd;verd;verd;verd' ] No hi ha cap millor ni pitjor ----------------------------- >>> with open('fAd.txt', 'w') as fAd: ... for lineAd in lA: ... rA = fAd.write(lineAd + '\n') >>> millors_pitjors('fAd.txt', 'fAr.txt') >>> with open('fAr.txt', 'r') as fAr: ... linesAr = fAr.read() >>> print(linesAr, end='') # doctesttag: +TAG=2_canvi_climatic-2_millors_pitjors verds: vermells: >>> try: ... os.remove('fAd.txt') ... finally: ... pass >>> try: ... os.remove('fAr.txt') ... finally: ... pass Hi ha 1 millor i 1 pitjor ------------------------- >>> with open('fBd.txt', 'w') as fBd: ... for lineBd in lB: ... rB = fBd.write(lineBd + '\n') >>> millors_pitjors('fBd.txt', 'fBr.txt') >>> with open('fBr.txt', 'r') as fBr: ... linesBr = fBr.read() >>> print(linesBr, end='') # doctesttag: +TAG=2_canvi_climatic-2_millors_pitjors verds: b2 vermells: b3 >>> try: ... os.remove('fBd.txt') ... finally: ... pass >>> try: ... os.remove('fBr.txt') ... finally: ... pass Hi ha 2 millors (ordenats) i 2 pitjors (ordenats) ------------------------------------------------- >>> with open('fCd.txt', 'w') as fCd: ... for lineCd in lC: ... rC = fCd.write(lineCd + '\n') >>> millors_pitjors('fCd.txt', 'fCr.txt') >>> with open('fCr.txt', 'r') as fCr: ... linesCr = fCr.read() >>> print(linesCr, end='') # doctesttag: +TAG=2_canvi_climatic-2_millors_pitjors verds: c2,c4 vermells: c3,c5 >>> try: ... os.remove('fCd.txt') ... finally: ... pass >>> try: ... os.remove('fCr.txt') ... finally: ... pass Hi ha 2 millors (ordenats) i 2 pitjors (ordenats) ------------------------------------------------- >>> with open('fDd.txt', 'w') as fDd: ... for lineDd in lD: ... rD = fDd.write(lineDd + '\n') >>> millors_pitjors('fDd.txt', 'fDr.txt') >>> with open('fDr.txt', 'r') as fDr: ... linesDr = fDr.read() >>> print(linesDr, end='') # doctesttag: +TAG=2_canvi_climatic-2_millors_pitjors verds: d1,d6 vermells: d4,d5 >>> try: ... os.remove('fDd.txt') ... finally: ... pass >>> try: ... os.remove('fDr.txt') ... finally: ... pass Hi ha 3 millors (ordenats) i 3 pitjors (ordenats) ------------------------------------------------- >>> lBC = lB + lC >>> with open('fBCd.txt', 'w') as fBCd: ... for lineBCd in lBC: ... rBC = fBCd.write(lineBCd + '\n') >>> millors_pitjors('fBCd.txt', 'fBCr.txt') >>> with open('fBCr.txt', 'r') as fBCr: ... linesBCr = fBCr.read() >>> print(linesBCr, end='') # doctesttag: +TAG=2_canvi_climatic-2_millors_pitjors verds: b2,c2,c4 vermells: b3,c3,c5 >>> try: ... os.remove('fBCd.txt') ... finally: ... pass >>> try: ... os.remove('fBCr.txt') ... finally: ... pass Hi ha 3 millors (ordenats) i 3 pitjors (ordenats) ------------------------------------------------- >>> lBD = lB + lD >>> with open('fBDd.txt', 'w') as fBDd: ... for lineBDd in lBD: ... rBD = fBDd.write(lineBDd + '\n') >>> millors_pitjors('fBDd.txt', 'fBDr.txt') >>> with open('fBDr.txt', 'r') as fBDr: ... linesBDr = fBDr.read() >>> print(linesBDr, end='') # doctesttag: +TAG=2_canvi_climatic-2_millors_pitjors verds: b2,d1,d6 vermells: b3,d4,d5 >>> try: ... os.remove('fBDd.txt') ... finally: ... pass >>> try: ... os.remove('fBDr.txt') ... finally: ... pass Hi ha 5 millors (ordenats) i 5 pitjors (ordenats) ------------------------------------------------- >>> lBCD = lB + lC + lD >>> with open('fBCDd.txt', 'w') as fBCDd: ... for lineBCDd in lBCD: ... rBCD = fBCDd.write(lineBCDd + '\n') >>> millors_pitjors('fBCDd.txt', 'fBCDr.txt') >>> with open('fBCDr.txt', 'r') as fBCDr: ... linesBCDr = fBCDr.read() >>> print(linesBCDr, end='') # doctesttag: +TAG=2_canvi_climatic-2_millors_pitjors verds: b2,c2,c4,d1,d6 vermells: b3,c3,c5,d4,d5 >>> try: ... os.remove('fBCDd.txt') ... finally: ... pass >>> try: ... os.remove('fBCDr.txt') ... finally: ... pass Hi ha 2 millors (desordenats) i 2 pitjors (desordenats) ------------------------------------------------------- >>> lCU = lC[::-1] >>> with open('fCUd.txt', 'w') as fCUd: ... for lineCUd in lCU: ... rCU = fCUd.write(lineCUd + '\n') >>> millors_pitjors('fCUd.txt', 'fCUr.txt') >>> with open('fCUr.txt', 'r') as fCUr: ... linesCUr = fCUr.read() >>> print(linesCUr, end='') # doctesttag: +TAG=2_canvi_climatic-2_millors_pitjors verds: c2,c4 vermells: c3,c5 >>> try: ... os.remove('fCUd.txt') ... finally: ... pass >>> try: ... os.remove('fCUr.txt') ... finally: ... pass Hi ha 2 millors (desordenats) i 2 pitjors (desordenats) ------------------------------------------------------- >>> lDU = lD[::-1] >>> with open('fDUd.txt', 'w') as fDUd: ... for lineDUd in lDU: ... rDU = fDUd.write(lineDUd + '\n') >>> millors_pitjors('fDUd.txt', 'fDUr.txt') >>> with open('fDUr.txt', 'r') as fDUr: ... linesDUr = fDUr.read() >>> print(linesDUr, end='') # doctesttag: +TAG=2_canvi_climatic-2_millors_pitjors verds: d1,d6 vermells: d4,d5 >>> try: ... os.remove('fDUd.txt') ... finally: ... pass >>> try: ... os.remove('fDUr.txt') ... finally: ... pass Hi ha 3 millors (desordenats) i 3 pitjors (desordenats) ------------------------------------------------------- >>> lBCU = lBC[::-1] >>> with open('fBCUd.txt', 'w') as fBCUd: ... for lineBCUd in lBCU: ... rBCU = fBCUd.write(lineBCUd + '\n') >>> millors_pitjors('fBCUd.txt', 'fBCUr.txt') >>> with open('fBCUr.txt', 'r') as fBCUr: ... linesBCUr = fBCUr.read() >>> print(linesBCUr, end='') # doctesttag: +TAG=2_canvi_climatic-2_millors_pitjors verds: b2,c2,c4 vermells: b3,c3,c5 >>> try: ... os.remove('fBCUd.txt') ... finally: ... pass >>> try: ... os.remove('fBCUr.txt') ... finally: ... pass Hi ha 3 millors (desordenats) i 3 pitjors (desordenats) ------------------------------------------------------- >>> lBDU = lBD[::-1] >>> with open('fBDUd.txt', 'w') as fBDUd: ... for lineBDUd in lBDU: ... rBDU = fBDUd.write(lineBDUd + '\n') >>> millors_pitjors('fBDUd.txt', 'fBDUr.txt') >>> with open('fBDUr.txt', 'r') as fBDUr: ... linesBDUr = fBDUr.read() >>> print(linesBDUr, end='') # doctesttag: +TAG=2_canvi_climatic-2_millors_pitjors verds: b2,d1,d6 vermells: b3,d4,d5 >>> try: ... os.remove('fBDUd.txt') ... finally: ... pass >>> try: ... os.remove('fBDUr.txt') ... finally: ... pass Hi ha 5 millors (desordenats) i 5 pitjors (desordenats) ------------------------------------------------------- >>> lBCDU = lBCD[::-1] >>> with open('fBCDUd.txt', 'w') as fBCDUd: ... for lineBCDUd in lBCDU: ... rBCDU = fBCDUd.write(lineBCDUd + '\n') >>> millors_pitjors('fBCDUd.txt', 'fBCDUr.txt') >>> with open('fBCDUr.txt', 'r') as fBCDUr: ... linesBCDUr = fBCDUr.read() >>> print(linesBCDUr, end='') # doctesttag: +TAG=2_canvi_climatic-2_millors_pitjors verds: b2,c2,c4,d1,d6 vermells: b3,c3,c5,d4,d5 >>> try: ... os.remove('fBCDUd.txt') ... finally: ... pass >>> try: ... os.remove('fBCDUr.txt') ... finally: ... pass ================== Nombres de Catalan ================== >>> from numcat import succ_cat >>> succ_cat(0) # doctesttag: +TAG=3_numcat [1, 1, 2, 5, 14, 42, 132, 429, 1430, 4862, 16796, 58786, 208012, 742900, 2674440] >>> succ_cat(1) # doctesttag: +TAG=3_numcat [1, 1, 2, 5, 14, 42, 132, 429] >>> succ_cat(2) # doctesttag: +TAG=3_numcat [1, 1] >>> succ_cat(3) # doctesttag: +TAG=3_numcat [1, 1, 2] >>> succ_cat(4) # doctesttag: +TAG=3_numcat [1, 1, 2, 5, 14, 42, 132] >>> succ_cat(5) # doctesttag: +TAG=3_numcat [1, 1, 2, 5, 14, 42, 132, 429, 1430, 4862, 16796, 58786, 208012, 742900, 2674440, 9694845] >>> succ_cat(6) # doctesttag: +TAG=3_numcat [1, 1, 2, 5, 14, 42] >>> succ_cat(7) # doctesttag: +TAG=3_numcat [1, 1, 2, 5] >>> succ_cat(8) # doctesttag: +TAG=3_numcat [1, 1, 2, 5, 14, 42, 132, 429, 1430, 4862, 16796] >>> succ_cat(9) # doctesttag: +TAG=3_numcat [1, 1, 2, 5, 14]