Ús d'iterables P80049


Statement
 

pdf   zip

thehtml

Es demanen els codis de diverses funcions sobre llistes. Seguiu el format dels exemples que es mostren a sota. Tots els codis es poden escriure sense utilitzar bucles.

  1. Escriviu una funció count_unique(L) que indiqui quants elements únics té una llista L.
  2. Escriviu una funció remove_duplicates(L) que retorni els elements d’una llista sense repeticions. L’ordre no importa.
  3. Escriviu una funció flatten(L) que aplani una llista de llistes d’elements produint una llista d’elements.
  4. Milloreu l’apartat anterior fent una funció flatten_rec(L) que pugui tractar llistes amb diferents nivells. Pista: feu-la recursiva usant la funció estàndard isinstance.

Puntuació

Totes les funcions valen el mateix.

Sample session
>>> count_unique([1, 3, 2, 2, 3, 4])
4
>>> remove_duplicates([3, 1, 3, 2, 3, 2, 3, 4])
[1, 2, 3, 4]
>>> flatten([[2, 6], [8, 1, 4], [], [1]])
[2, 6, 8, 1, 4, 1]
>>> flatten_rec([3, [1], [], [4, [], [5, 3]], [2, 1]])
[3, 1, 4, 5, 3, 2, 1]
Information
Author
Gerard Escudero i Albert Rubio
Language
Catalan
Official solutions
Python
User solutions
Python