Facultad de
Programa de formación Machine Learning and Data Science MLDS
Lenguaje de Índices de listas range(x)
programación Python #Lista de enteros desde 0 hasta x - 1
> l = ['a','b','c','d','e'] range(x, y)
l[0] #'a' #Lista de enteros desde x hasta y - 1
Python 3 - Guía de referencia l[-1] #'e' range(x, y, step)
l[2:] #['c','d','e'] #Lista de enteros desde x hasta y - 1,
l[:2] #['a','b'] #dando pasos de tamaño step
Documentación y ayuda l[0:5:2] #['a', 'c', 'e']
l[::-1] #['e', 'd', 'c', 'b', 'a'] Operadores lógicos
help(objeto) objeto? objeto??
> a = True
Tuplas > b = False
Comentarios > a and b #False Conjunción
#Son como las listas, pero inmutables > a or b #True Disyunción
#Esta línea es ignorada
t = (0, 1.2, 'abc') > not a #False Negación
t = tuple('abc') #('a','b','c')
""" Estas también y son usadas para Operadores numéricos
documentar. """
Conjuntos > a = 3
Variables > a + 2 # 5 Suma
#Colección no ordenada de elementos únicos > a - 2 # 1 Resta
> a = 100 > a = b > -a #-3 Negación
> a = "100" > a = 2, b = 3 s = {2,1,3,1} # {1, 2, 3} > a * 2 # 6 Multiplicación
> a = True s = set('aabcb')# {'a','b','c'} > a / 2 # 1.5 División
> a % 2 # 1 Residuo(mod)
Tipos de dato numéricos > a ** 2# 9 Exponenciación
Importar librerías > a // 2# 1 División entera
> -100, 23 int: Número entero
> 3.75, 0.1e20 float: Número decimal
from numpy import * Operadores relacionales
import numpy as np
> 7 + 0.5j, -j complex: Número complejo > a = 3, b = 2
> a == b #False Igual
Tipo de dato lógico(boolean) Control de flujo > a != b #True Distinto
> a < b #False Menor que
>True Verdadero if condición_1: > a > b #True Mayor que
>False Falso expresión_1 > a <= b #False Menor o igual
elif condición_2: > a >= b #True Mayor o igual
expresión_2
Tipo de dato de texto(string)
else: Diccionarios
expresión_3
#Colecciones que relacionan llaves
>"123a" string #con valores
>'a.py' string while condición:
if condición_1: > d = {
break #Termina el ciclo "num": 500,
Listas else: "str": "Calabaza",
expresión "lst": [1,2,3]
#Colección ordenada de datos. continue #Empieza una iteración }
> d["num"] = 501
> a = [], b = list() > d.get("num") #501
for elemento in colección: > d = dict(num = 1, str = "abc")
> a = ['a', True, 100, b, [1,2,’a’]]
expresión
Python Software Foundation. (2019, 14 de Octubre). Python 3.8.0 documentation [software].
Consultado el 8 de mayo de 2020. https://docs.python.org/release/3.8.0/
Facultad de
Programa de formación Machine Learning and Data Science MLDS
Operaciones en listas Operadores a nivel de bits Operaciones en diccionarios
l[i] = x Asigna el valor de x en la
posición i de la lista #Asumiendo enteros s.get(key) Retorna el elemento
#de 4 bits asociado a key
l.copy() Copia la lista
> a = 6 #0110 s.pop(x) Elimina el elemento
l.clear() Vacía la lista
> b = 12 #1100 asociado a key
l.sort() Ordena los elementos s.popitem() Elimina el último elemento
l.append(x) Agrega el elemento x #Se opera en base 2
#o binario. s.keys() Retorna la lista de llaves
al final de la lista and
> a & b #0100 (4) s.values() Retorna la lista de valores
l.pop(i) Elimina el elemento or s.items() Retorna la lista de parejas
en la posición i > a | b #1110 (14)
> a ^ b #1010 (10) xor de llaves y valores.
l.remove(x) Elimina el elemento not
con valor x > ~ a #1001 (9)
> a << 1 #1100 (12) left-shift
l.insert(i, x) Agrega el elemento x right-shift Operadores in y is
en la posición i > a >> 1 #0011 (3)
¿x está en y? ¿Son el mismo objeto?
l.index(x) Posición del elemento x x in y x is y
Operaciones en cadenas de texto
Funciones Comprensión de listas
def foo(a,b): > a = "A", b = ' bcd '
> a + b 'A bcd ' l = []
return a + b
> a * 3 'AAA' for elemento in colección:
> a.lower() 'a' if condición:
> foo(3,5) # 8
> b.upper() ' BCD ' l.append(elemento)
#Argumentos por defecto > b.replace('b','A') ' Acd '
> b.strip() 'bcd' #Con comprensión de listas
def foo(a = 5, b = 0):
> a.count('b') 0 l = [elemento for elemento
"""
> b.find('c') 2 in colección if condición]
Esta es la documentación
de la función.
""" islower() isupper() isdigit() isalpha() Función Map
return a + b isspace() istitle() isalnum() isupper()
> foo? # Esta es la d... map(función, coleccion)
> foo(3) # 3
> foo(b = 5) # 10 > m = map(lambda x: x.upper(), 'abcd')
Operaciones en conjuntos
<map object at 0x7f43fed922b0>
Entrada y salida > list(m)
s.add(x) Añade el elemento x ['A', 'B', 'C', 'D']
#Entrada #Salida
s.remove(x) Elimina el elemento x
x = input() print(x)
s.pop() Elimina un elemento Función Filter
Expresiones lambda aleatorio
a.difference(b) Diferencia filter(función, colección)
lambda argumentos: expresión a.intersection(b) Intersección
a.union(b) Unión > f = filter(lambda x: x.isupper(), 'AbCdEf')
foo = lambda a,b,c : a + b + c a.issubset(b) Subconjunto <filter object at 0x7f43fed92c18>
foo # <function> a.issuperset(b) Superconjunto > list(f)
foo(1,2,3) # 6 a.isdisjoint(b) Conjuntos disyuntos ['A', 'C', 'E']
Python Software Foundation. (2019, 14 de Octubre). Python 3.8.0 documentation [software].
Consultado el 8 de mayo de 2020. https://docs.python.org/release/3.8.0/