





















Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Prepara tus exámenes
Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Prepara tus exámenes con los documentos que comparten otros estudiantes como tú en Docsity
Encuentra los documentos específicos para los exámenes de tu universidad
Estudia con lecciones y exámenes resueltos basados en los programas académicos de las mejores universidades
Responde a preguntas de exámenes reales y pon a prueba tu preparación
Consigue puntos base para descargar
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Comunidad
Pide ayuda a la comunidad y resuelve tus dudas de estudio
Ebooks gratuitos
Descarga nuestras guías gratuitas sobre técnicas de estudio, métodos para controlar la ansiedad y consejos para la tesis preparadas por los tutores de Docsity
En este documento se presenta una introducción básica a las colecciones de datos en python, con un enfoque especial en las listas y diccionarios. Se explica cómo crear, manipular y utilizar estos tipos de colecciones, así como su comparación entre sí.
Tipo: Apuntes
1 / 29
Esta página no es visible en la vista previa
¡No te pierdas las partes importantes!






















J O R D I V I T R I ÀJ O R D I
V I T R I À^1
Elements
de
Programació
Col
∙leccions
Exemples de
col
∙leccions
:
Exemples
de
col leccions
:
-^ Paraules
-^ Estudiants d’un curs•^ Estudiants
-^ Dades
-^ Clients
-^ Els
Python
ens
dona
suport
per
a^
la^
manipulació
d’aquest
tipus
de
dades.
2
Elements
de
Programació
Col
∙leccions
El^
que
necessitem
és
emmagatzemar
una
col
∙lecció
de
coses
(a
priori
no
sabem
q
uantes)
en
un
objecte.
q^
j
De
fet,
aquest
tipus
d’objecte
ja
l’hem
fet
servir,
i^ es
diu
llista:
Una
llista és
una
seqüència
ordenada
de
coses. Els^ elements
estan
indexats
per
subíndexos
4
Elements
de
Programació
Col
∙leccions
De
fet
les
llistes
i^ els
strings
són
conceptualment
molt
semblants,
i
podem
aplicar
‐hi
operadors
semblants:
dif
è^
i^
é^
l^
t^
La
dif
erència
és
el
que
contenen.
Les
llistes
poden
contenir
qualsevol
tipus
de
dades,
incloent
classes
definides
pel
programador Les llistes són mutablesprogramador
.^ Les
llistes
són
mutables
és
a^
dir,
es
poden
canviar
sobre
la
mateixa
estructura
(els
strings
no!).
5
Elements
de
Programació
Col
∙leccions
Podem
crear
llistes
d’objectes
idèntics
així:
afegir
‐hi/borra
‐hi coses:
7
Elements
de
Programació
Col
∙leccions
8
Elements
de
Programació
Col
∙leccions
Després
calculem
la
mitja:
I el programa original queda:I^ el
programa
original
queda:
Un cop tenim la mitja podem calcular la desviació :Un
cop
tenim
la
mitja
podem
calcular
la
desviació
10
Elements
de
Programació
Col
∙leccions
La
mitjana
és
una
mica
més
complicada.
11
Elements
de
Programació
Objectes
i
valors
j
Si^
executem: a = “banana”B = “banana” a^ i
b
“apunten”
a^
un
string
amb
el
mateix
valor,
però
és
el
mateix
string
Cada
objecte
té
un
identificador únic,
que
podem
obtenir
amb
la
funció
id:
Per
tant,
en
aquest
cas
Python
ha
creat
una
estructura
“banana
”^ i
les
dues
variables
en fan referència.
13
Elements de
Programació
en
fan
referència.
Objectes
i
valors
j
i d
i bl
f^
f^
è^
i^
l^
t i
bj
t^
t^
i^
l’^
d
Per
veure
si
dos
variables
fan
referència
al
mateix
objecte
tenim
l’operador
que
s’anomena
igualtat
superficial,
perquè
només
compara
les
referències,
no
els
objectes! Per
comparar
els
objectes,
igualtat
profunda,
podem
fer
això:
14
Elements de
Programació
Objectes
i
valors
j
Com
que
la
llista
té
dos
noms,
direm
que
té
un
alias:
Ai ò é
illó
bj
t^
t bl
!!! P l
t bl
hi h
bl
(^ t i
Això
és
perillós
per
objectes
mutables!!!
Pels
mutables
no
hi
h
a^ problema
( strings
El^
clonatge és
una
tècnica
per
la
que
fem
una
còpia
de
l’objecte
en
si,
no
de
la
referència Pel cas de les llistes ho podem fer així:referència
.^ Pel
cas
de
les
llistes
ho
podem
fer
així: 16
Elements de
Programació
Objectes
i
valors
j
Per
evitar
els
perills
de
l’alias,
Python
ens
proporciona
un
mòdul
de
còpia:
Per
copiar
un
objecte
simple
és
suficient
(còpia
superficial),
però
si
un
objecte
conté
un
altre
objecte
necessitem
una
còpia
profunda...
17
Elements de
Programació
Objectes
i
valors
j
Si^
passem
una
llista
com
argument
d’una
funció,
passem
una
referència,
no
una
còpia
.^ Considerem
aquesta
funció:
19
Elements de
Programació
Objectes
i
valors
j
Considerem aquesta altra funció:Considerem
aquesta
altra
funció:
Si^
retornem
una
llista
també
retornem
una
referència:
Com
que
la
llista
s’ha
creat
amb
:^ és
una
nova
llista.
Qualsevol
modificació
de
rest
no
20
Elements de
Programació
té
efectes
a^
numbers