Python
Comparación y flujo de control
La bibliografía de ésta sección es el libro: Doing Computational Social Science A Practical Introduction, de McLevey pg. 59.
Comparaciones
Operador | Significado |
---|---|
== | Igualdad |
!= | No es igual |
> | Mayor |
>= | Mayor o igual |
< | Menor |
<= | Menor o Igual |
in | ¿está en? |
Comparar cadenas
Por ejemplo:
ciudad = 'Guadalajara'
'Mexico' == ciudad
'Gua' == ciudad
'Guadalajara' == ciudad
'Gua' in ciudad
Comparar variables numéricas
unNumero = 3
unNumero < 2
unNumero >= 3
unNumero != 983
¿el valor está en la lista?
Nombres = ['carlos','antonia','luisa','jo']
'antonia' in Nombres
'car' in Nombres
Función np.linspace
Lo usamos para generar números en un intervalo. Por ejemplo,
np.linspace(0,10,11)
genera los números del (0) al
(10). Devuelve un arreglo.
Ejemplo
import numpy as np
lista = np.linspace(0,2,21)
print(lista)
Este código:
- Llama la librería
numpy
con el aliasnp
- Llama la función
linspace
, el resultado lo guarda en la variablelista
- Imprime la variable
lista
if-else
Flujo if-else
- Dependiendo de un valor lógico ejecuta un código u otro
- Los bloques se marcan con indentación
- Es la forma más sencilla de control de flujo
Ejemplo True
y False
if True:
print("primer bloque")
else:
print("segundo bloque")
Ejemplo: en una lista
Nombres = ['carlos','antonia','luisa','jo']
if 'Pancha' in Nombres:
print("ya está")
else:
Nombres.append('Pancha')
if 'Antonia' in Nombres:
print("ya está")
else:
Nombres.append('Antonia')
print(Nombres)
Flujo for
- Sus elementos son:
- Un conjunto
- Una variable
- Un bloque de instrucciones
- Se repite el bloque de instrucciones, iterativamente la variable es cada uno de los elementos del conjunto.
Ejemplo: for
en una secuencia de enteros
suma = 0
for x in [1,2,3]:
suma = suma + x
print(x)
print(suma)
- La línea
suma = 0
es una definición, está por fuera del ciclofor
- Los elementos son:
- El conjunto: la lista de números
[1,2,3]
- La variable: es
x
- El bloque de instrucciones: son dos instrucciones,
suma = suma + x
yprint(x)
- El conjunto: la lista de números
Ejemplo: for
en una secuencia de decimales
import numpy as np
for x in np.linspace(0,1,11):
print(x)
- La línea
import numpy as np
es una llamada a la librería numpy, está por fuera del ciclofor
, la necesitamos para poder usar la libreríanumpy
. Se usa con el aliasnp
- Los elementos son:
- El conjunto: el arreglo de números
- La variable: es
x
- El bloque de instrucciones: es una instruccion,
print(x)
Ejemplo: for
en una secuencia de números
Si la los elementos del conjunto no importan o queremos que sean simplemente los enteros hasta un valor se pusa el comando range. Por ejemplo, corra el siguiente código:
for x in range(7):
print(x)
Aquí x va tomando los enteros del 0 hasta antes de 7.
Ejercicio: for
en una lista
Nombres = ['carlos','antonia','luisa','jo']
for x in Nombres:
print('el nombre es ' + x)
- ¿qué hace la línea
Nombres = ['carlos','antonia','luisa','jo']
? ¿Es parte del ciclofor
? - Cuáles son los elementos?
- El conjunto:
- La variable:
- El bloque de instrucciones:
Ejercicio: Sumar los números del 1 al 100
- Defina una variable llamada
suma
, que tenga inicialmente el valor de 0. - Construya un ciclo
for
que vaya del 1 al 100 - En el bloque de instrucciones, vaya modificando el valor de
suma
para sumar cada uno de los números que va tomando la variable. - Al final, por fuera del bloque, imprima la variable
suma
- Extra, hay una forma teórica de saber cuánto debería dar la suma. ¿se acuerda?