2. Dentro de los lenguajes informáticos, Python, pertenece al grupo de los lenguajes de
programación y puede ser clasificado como un lenguaje interpretado, de alto nivel,
multiplataforma, de tipado dinámico y multiparadigma. A diferencia de la mayoría de los
lenguajes de programación, Python nos provee de reglas de estilos, a fin de poder
escribir código fuente más legible y de manera estandarizada. Estas reglas de estilo,
son definidas a través de la Python Enhancement Proposal Nº 8 (PEP 8) la cual iremos
viendo a lo largo del curso.
En un lenguaje de programación, las estructuras de control permiten modificar el flujo
de la ejecución de un conjunto de instrucciones. Se pueden distinguir tres tipos básicos
de control de flujo, a saber:
Control secuencial
Control de selección
Control de repetición
En el control secuencial las instrucciones se ejecutan de manera secuencial desde el
inicio hasta el fin del programa. En el control de selección se tiene una condición que
puede ser falsa o verdadera, dependiendo de esto se ejecutará uno u otro bloque de
instrucciones. En el control de repetición, un bloque de instrucciones se ejecuta de
manera repetitiva mientras una condición sea verdadera, en caso contrario el flujo de
ejecución se pasará a otro conjunto de instrucciones.
Condicional if-elif-else
El condicional if-elif-else es una estructura de control de selección que sirve para tomar
decisiones, basándose en la evaluación de condiciones y/o comparaciones, en el flujo
del programa. La sintaxis más general para if-elif-else es:
Donde cond1, cond2, ... condn son valores lógicos que resultan de una comparación.
Esta estructura se evalúa secuencialmente hasta encontrar una condición que se
3. cumpla, si ninguna lo hace, entonces se ejecuta la instrucción colocada en el caso por
default else.
Ciclo for
El bucle for es una estructura de control de repetición, en la cual se conocen a priori el
número de iteraciones a realizar. En lenguajes como C++ o Java, el ciclo for necesita
de una variable de ciclo de tipo entero que irá incrementándose en cada iteración. En
Python, la cuestión es un poco diferente, el ciclo for recorre una secuencia y en la k-
ésima iteración la variable de ciclo adopta el valor del elemento en la k-ésima posición
del iterable.
De manera general, la sintaxis de for es:
Donde var es la variable de ciclo o variable de control y secuencia la secuencia de
valores que deberá iterarse. Es necesario remarcar la importancia de los dos puntos al
final de esta primera línea y en indentar el bloque de código subsecuente que definirá
el cuerpo del ciclo for.
Ciclo while
El ciclo while ejecuta un bloque de instrucciones mientras haya una condición que se
cumpla. La sintaxis de while es:
while cond:
# hacer algo
Donde cond es un valor de tipo booleano que usualmente resulta de realizar una
comparación; mientras cond sea un valor booleano True entonces el bloque de
instrucciones contenidas en while se ejecutarán.
4. Caso en lenguaje de programación Phyton
Escribir un programa que almacene las asignaturas de un curso (por ejemplo
Matemáticas, Física, Química, Historia y Lengua) en una lista, pregunte al usuario la
nota que ha sacado en cada asignatura, y después las muestre por pantalla con el
mensaje En <asignatura> has sacado <nota> donde <asignatura> es cada una de las
asignaturas de la lista y <nota> cada una de las correspondientes notas introducidas por
el usuario.
Solución
subject = ["Matemáticas", "Física", "Química", "Historia", "Lengua"]
scores = []
for subject in subjects:
score = input ("¿Qué nota has sacado en " + subject + "?")
scores. append(score)
for i in range(len(subjects)):
print ("En " + subjects[i] + " has sacado " + scores[i])
¿Qué nota has sacado en Matemáticas? 6
¿Qué nota has sacado en Física? 7
¿Qué nota has sacado en Química? 4
¿Qué nota has sacado en Historia? 6
En Matemáticas has sacado 6
En Física has sacado 7
En Química has sacado 4
En Historia has sacado 6