Skip to content

Commit 2209d1b

Browse files
authored
mouredev#5 - Python
Mi ejercicio tras mouredeb¡v
1 parent b1ef462 commit 2209d1b

File tree

1 file changed

+55
-0
lines changed
  • Roadmap/05 - VALOR Y REFERENCIA/python

1 file changed

+55
-0
lines changed
Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
'''EJERCICIO:
2+
- Muestra ejemplos de asignación de variables "por valor" y "por referencia", según
3+
su tipo de dato.
4+
- Muestra ejemplos de funciones con variables que se les pasan "por valor" y
5+
"por referencia", y cómo se comportan en cada caso en el momento de ser modificadas.
6+
(Entender estos conceptos es algo esencial en la gran mayoría de lenguajes)'''
7+
8+
#Asignación de variables "por valor". Cuando la nueva variable recibe una copia de la original
9+
a = 5
10+
b = a
11+
b = 10 #cambiar b no ha supuesto cambiar a
12+
print(a)
13+
print(b)
14+
15+
#Asignación de variables "por referencia"
16+
list1 = [1,2,3,4]
17+
list2 = list1
18+
list2.append(3)
19+
print(list1)
20+
21+
dict1 = {"Luke": "Jedi",
22+
"Anakin": "Jedi",
23+
"Conde Doku": "Sith"}
24+
25+
dict2 = dict1
26+
27+
dict2["Anakin"] = "Sith"
28+
29+
print(dict1)
30+
31+
'''DIFICULTAD EXTRA (opcional):
32+
Crea dos programas que reciban dos parámetros (cada uno) definidos como variables anteriormente.
33+
- Cada programa recibe, en un caso, dos parámetros por valor, y en otro caso, por referencia.
34+
Estos parámetros los intercambia entre ellos en su interior, los retorna, y su retorno
35+
se asigna a dos variables diferentes a las originales. A continuación, imprime el valor de las
36+
variables originales y las nuevas, comprobando que se ha invertido su valor en las segundas.
37+
Comprueba también que se ha conservado el valor original en las primeras.'''
38+
#Por Valor
39+
x = 3
40+
y = 9
41+
42+
def intercambio_variables(a,b):
43+
return b,a
44+
45+
nuevo_x, nuevo_y = intercambio_variables(x,y)
46+
print(nuevo_x)
47+
print(nuevo_y)
48+
49+
list1 = [1,3,5]
50+
list2 = [2,4,6]
51+
nueva_list1, nueva_list2 = intercambio_variables(list1, list2)
52+
print(nueva_list1)
53+
print(nueva_list2)
54+
55+

0 commit comments

Comments
 (0)