Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Print(´Felipe´)
¿Qué aprender del lenguaje? Terminos propios: Data type (que tipo de datos puede sosterner un
programa), acciones, mejores practicas (para escribir códigos).
Tipos de datos fundamentales en Python: es un valor en Python,
- Int: numeros
- Float
- Bool
- Str: letras
- List
- Tuple
- Set
- dict
Classes: es decir, se pueden crear nuevos tipos de datos (custon type)
Tipos de datos especializados: paquetes y modulos (extensiones)
None: nada (idea del 0 en matemática).
Type (que tipo de datos se están usando) ej. Print(type(2+4))
DATA TYPE-TUPLE: Son como listas, pero a diferencia de ellas, no se pueden modificar
(inmutables)
My_tuple = (1,2,3,4,5)
My_tuple[1] = “z” -> error, el tuple no se puede modificar
No se puede modificar, es decir no se puede organizar, revertir (un tuple puede ser un key en un
diccionario)
METHODS:
.count (), cuenta cuantas veces hay un valor
DATA TYPE-SET: Colección desordenada de objetos únicos
My_set = {1,2,3,4,5,5,5,5,5}
Print(My_set) -> {1,2,3,4,5} -> solo valores únicos. NO repite.
Los sets no dejan ingresar a la información que hay en ellos
Print(My_set[0]) -> error
METHODS:
My_set = {1,2,3,4,5}
Your_set = {4,5,6,7,8,9,10}
Algo como diagramas de Venn.
Print(my_set.difference(Your_set)) -> {1,2,3}
My_set.discard(5) -> None, pero luego (print(my_set) -> {1,2,3,4}
Print(My_set.difference_update(Your_set)) -> remueve todos los elementos de otro set en este.
Este cambia el set para más adelante, el primero (.difference) no.
My_set.intersection (Your_set) -> {4,5}
My_set.isdisjoint (Your_set) -> Estos sets no tienen nada en comun?
.issubset() -> pregunta si uno de los sets está completamente dentro del otro (F o V)
.isssuperset() -> lo contrario que la pregunta aneterior
My_set.union (Your_set) -> {1,2,3,4,5,6,7,8,9,10} pint(my_set | your_set) -> es lo mismo.
LOGICA CONDICIONAL.
BOOLEANS
If condition:
Is_old = True -> Si fuera False, el print de if no imprimiría nada, pero sí el de Else
Is_licensed = True
If is_old:
Print (“you are old enough to drive!”)
Elif is_licenced:
Print (“You can drive now!”) -> Otra condición
Else:
Print (“you are not of age!”) -> En caso de que todo sea false
En este caso queremos mirar ambos, ya que queremos mirar tanto si tiene la edad y si la licencia
es verdadera, en el código anterior solo estamos mirando una de ellas sin importar la otra. Se
pueden tener tantos Elif cuantos se quieran.
If is_old and is_licenced:
Print (“You can drive now!”)
TRUTHY AND FALSY:
Es possible crear Booleans con strings o int, con Bool()
Is_old = bool(“hello”) -> esto será Truthy
Is_licenced = bool(“0”) -> esto será falsy
TERNARY OPERATOR: Es una forma de hacer condicionales un poco más “limpia”.
Condition_if_true if condition else condition_if_false
Un ejemplo para saber si alguien te puede enviar mensajes a Fb.
Is_friend = True
Can_message = “message allowed” if is_friend else “not allowed to message”.
SHORT CIRCUITING: Cuando la maquina verifica algo y no necesita verificar el resto, no lo hace,
ahorra trabajo.
OPERADORES LÓGICOS (entre 2 cosas): and, or, >, >, ==, != (no igual), >=, <=, not (opuesto)
Print(not(1==1)) -> False
EJERCICIO:
Quiero saber si un personaje es un mago pero que no sea experto:
If is_magiciand and not is_expert:
PALABRA CLAVE IS:
== Chequea por la igualdad en valor, el is verifica si la ubicación en la memoria es la misma, es
decir no pueden ser valores equivalentes, tiene que ser el mismo valor. Con listas es diferente, ya
que 2 listas iguales no corresponden a la misma lista, igual que con diccionarios, sets, tupples.
LOOPS
Permite correr línea de códigos una y otra y otra vez, miles o millones de veces si se desea.
Permite iterar elementos que tengan varios valres..
FOR:
For ítem in [1,2,3,4,5] -> Iterable
Print (ítem) -> los muestra pero en orden vertical
For ítem in (1,2,3,4,5)
For x in [“a”, “b”, “c”]
Print (ítem, x)
Un iterable es una colección de objetos que pueden ser iterables, puede ser lista, diccionario,
tuple o set, incluso un string, es decir pueden ir uno por uno para revisar cada ítem en la colección.
User = {
“name”: “Golem”
“age”: 5006,
“can_swim”: False
}
For ítem in user:
Print (ítem) -> muestra las key del diccionario
METHODS PARA ITERAR EN DICCIONARIOS:
.items permite imprimir tanto las key como sus correspondientes
.values permite ver los valores correspondientes
.keys permite ver las keys
For key,values in user.items()
Print (key,values)
Los Int no se pueden iterar
Ejercicio:
My_list =[1,2,3,4,5,6,7,8,9,10]
Counter = 0
For ítem in my_list:
Counter = counter + item
Print (counter) -> 55
Con RANGE se puede crear loops
For number in range(100)
Print (number), o podría ser
Print (“hola”) -> pondría hola 100 veces
Con ENUMERATE () puedo enumerar los componentes de una colección de datos.
While condition:
I=0
While I < 50:
Print (i) -> va a poner 0 infinitas veces
BREAK
BREAK es otra palabra clave en Python (ayuda a parar el código)
I= 0
While i<50:
Print (i)
I = I + 1 -> imprimirá del 0 al 49 (llevarlo hasta el false)
My_list = [1,2,3]
Print (item)
I=0
Print(i)
I=I+1
Continue
Print (item) -> No va a imprimir nada, porque continue regresa el códigov al renglón inicial.
Con end =”” puedo poner todo en una sola línea en una iteración
FUNCIONES
Usando def Podemos decirle a Python que vamos a crear una nueva función:
Def say_hello ()
Print (“hello”)
Sirve para definir cosas y acortar codigos, es decir si se quiere repetir algo, sólo basta con poner la
función, no toca repetir el código
Un argumento es usado cuando le estoy dando valores a una función, mientras que los
parámetros son cuando se define la función. Necesitan estar en la posición que se les indica:
ARGUMENTOS KEYWORDS:
PARAMETROS PREDEFINIDOS:
Return num1+num2
Una función debe realizar una cosa bien y debe dar algo (return).
DOCSTRINGS:
Def test(a)
´´´
´´´
Print (a)
*ARGUMENTO:
Def func(*args):
**KEY ARGUMENTOS:
Print (kwargs)
SCOPE:
Total = 0
Def count():
Global total
Total += 1 -> con global me permite usar la variable total que ya existía
Return total
Print(count())
NONLOCAL:
Me permite usar funciones dentro de funiones, ósea, no se quiere crear una nueva variable, sino
usar una que ya existe