Fusió d’strings¶
Dissenya una funció, anomenada
intercalat, que, donats dos strings s1 i s2, retorna un string tal que:si s1 i s2 tenen la mateixa longitud, l’string retornat està format pels caràcters d’índex parell de s1 i els d’índex senar de s2.
si s1 i s2 tenen longituds diferents, l’string retornat és una còpia de l’string més curt de s1 i s2.
Desa la funció al fitxer
fusio_str1.py. La funció ha de passar el següent doctest:>>> intercalat('MORIA', 'PANEL') 'MAREA' >>> intercalat('HOLA', 'MIS') 'MIS'
Nota
Podeu descarregar el fitxer amb tests
fusio_str1.txtDissenya una funció, anomenada
fusio, que, donats dos strings s1 i s2, retorna un string s3 resultant de la fusió de s1 i s2 aplicant la següent metodologia:es recorren caràcter a caràcter els strings s1 i s2 fins a l’acabament de l’string més curt: si els caràcters de mateix index són iguals en s1 i s2, es copien una sola vegada a s3; si són diferents, es copien tots dos, primer el de s1 i després el de s2.
es copia a s3 el final de l’string més llarg de s1 i s2, és a dir el tros que no s’ha tractat en el recorregut anterior.
Desa la funció al fitxer
fusio_str2.py. La funció ha de passar el següent doctest:>>> fusio('BANANAS', 'BOND') 'BAONADNAS' >>> fusio('EXTRAORDINARI', 'EXTRA') 'EXTRAORDINARI'
Nota
Podeu descarregar el fitxer amb tests
fusio_str2.txtDissenya una funció, anomenada
interseccio, que, donats dos strings s1 i s2, retorna un string format pels caràcters de mateix índex en s1 i s2 que són iguals.Desa la funció al fitxer
fusio_str3.py. La funció ha de passar el següent doctest:>>> interseccio('BANANAS', 'BOND') 'BN' >>> interseccio('EXTRAORDINARI', 'EXTRA') 'EXTRA'
Nota
Podeu descarregar el fitxer amb tests
fusio_str3.txt
Solució
Disposeu de solucions als fitxers fusio_str1.py, fusio_str2.py, fusio_str3.py