Skip to content

Latest commit

 

History

History
505 lines (404 loc) · 17.1 KB

File metadata and controls

505 lines (404 loc) · 17.1 KB

Anotaciones Python

Índice

Anotaciones Generales

Refinamiento sucesivo: dividir una aplicación y realizar pruebas al desarrollar, para evitar errores al principio o en medio, y corregirlos en la fase de desarrollo.
Invertir cadena escrita con: var[::-1]
Flag - Punto de parada
Se puede recibir el mismo valor para varias variables utilizando:
ex = ex1 = ex2 = ex3 = 0
reverse = True - hace que algunas funciones se inviertan ej: L.sort()
función == Método
toda función abre y cierra paréntesis después del nombre ej: f()

Tipos Primitivos

  • int - entero
  • bool - booleano / true, false
  • float - números con coma/decimales
  • str - cadena de texto

Operaciones Aritméticas

  • Adición: +
  • Sustracción: -
  • Multiplicación: *
  • División: /
  • Potencia: **
  • División (entera): //
  • Resto de la división/Módulo: %
  • Comparación: ==
  • Asignación: =

Orden De Precedencia

  1. :()
  2. :**
  3. :*,/,//,%
  4. :+,-

Anotaciones Print

dentro de un print con f-string o .format se puede utilizar :.3f dentro de las llaves para definir solo 3 dígitos después del punto decimal
end=’ ’ no rompe la línea
\n - salto de línea
3 comillas dobles para abarcar más de una línea
f-string - f'prueba : {variable}'

Bibliotecas

Math

ceil(N) : redondea hacia arriba
floor(N) : redondea hacia abajo
trunc(N) : reduce lugares decimales sin redondear
pow(N) : potencia
sqrt(N) : raíz cuadrada
factorial(N) : factorial

Random

random() : genera número aleatorio entre 0 y 1
randint(número inicial, Número Final) : genera un número entero aleatorio en un rango determinado
shuffle(L) : Baraja una lista

Time

sleep(segundos): hace que el proceso espere la cantidad de tiempo definida antes de continuar la ejecución

Datetime

date.today().year : año actual

Operator

itemgetter - usado para buscar elementos dentro de diccionarios

Urllib

urllib.request.urlopen( URL de algún sitio ) - intenta acceder a algún sitio
variable_con_url_sitio.getcode() - Devuelve un código para el intento de acceso, siendo 200 exitoso.

Manipulação De Texto

Localización

frase[9:21] - Devuelve el valor de la frase comenzando en la posición 9 y yendo hasta la 20 (python ignora la última)
len(f) - cantidad de caracteres en una cadena o lista
(T).count() - cuenta la cantidad de un carácter dentro de una cadena / lista
(T).find() - muestra la posición de un carácter dentro de una cadena / lista. si no existe, devuelve -1
(T).index(Valor buscado, Inicio) - muestra la posición del valor buscado dentro de una variable compuesta
in - devuelve valor booleano
del(Variable)

Transformaciones

replace() - Reemplaza una cadena/valor de lista por otra cadena digitada
upper() - Convierte una cadena a mayúsculas
lower() - Convierte una cadena a minúsculas
capitalize() - Convierte una cadena a minúsculas y pone la primera letra en mayúscula
title() - Capitaliza la primera letra de cada palabra en una cadena
strip() - Elimina los espacios inútiles al principio y al final de la cadena
rstrip() - Elimina los espacios a la derecha
lstrip() - Elimina los espacios a la izquierda
string.center(Número de caracteres) - Centra el texto en el Número de caracteres definido

División

split() - Divide una cadena en una lista

Fusión

'separador'join(frase) - une una cadena // ejemplo '-'.join(frase) une la cadena y separa por '-'
zfill(número) - añade una cantidad de ceros a una cadena

Estrutura Condicional Simple E Composta

Tipos

Secuencial

ejecuta el programa de forma lineal de arriba hacia abajo ejecutando todos los comandos

Pythonizar

Escríbelo todo en una línea ejemplo: print('1' if var <=3 else '2')

Simple

Ejecuta solo un bloque condicional

Compuesto

ejecuta más de un bloque condicional ej : else

Anidadas

Condiciones dentro de condiciones

If

if - si elif - Siempre necesita un if previamente
else - Solo se puede utilizar una vez dentro del Bloque anidado con if o elif

Estrutura De Repetição Ou Laços Ou Iterações

Bucle Con Variable De Control

For

for x in range(Número Inicial, Número Final(Siendo el Resultado NF-1), cuál es la iteración (Ejemplo Sumar(1) o restar(-1)) )
for x enumerated( Variable Compuesta ) devuelve el valor y el índice.

Bucle Con Prueba Lógica

While

while not (Valor Booleano):
while true: bucle infinito
break - interrumpe el bucle de repetición
continue - continúa el bucle y si el programa se salta la sección, salta a la siguiente iteración

Coleções

Anotaciones

Puedes interpolar colecciones, por ejemplo: Diccionarios dentro de listas

Tuplas

Carácter - ()

Las tuplas son inmutables sorted(T) - ordena la tupla pero no almacena el valor, para guardarlo usar variable

Listas

Caracter - []

sum(L) - suma todos los valores de una lista
L.append() - añade un valor a la lista
L[índice] - muestra el elemento que está en la posición indicada
L.insert(Posición,Valor) - añade un valor en una posición seleccionada
L.remove() - elimina un valor de la lista
max(L) - Muestra el mayor valor de la lista
min(L) - Muestra el menor valor de la lista
(L).sort - Ordena la lista
del L[Índice] - Eliminar un elemento de una lista por el Índice elegido
L.pop(Índice) - Elimina un elemento de una lista por el Índice elegido o, si no se le pasa argumento, elimina el último valor.
L.remove(valor) - Elimina el elemento buscado por el valor(Contenido) definido
L1 = L2 - el signo '=' crea un enlace entre las listas, donde cambiar una afecta a la otra
L1 = L2[:] - copia la lista, sin crear enlace
L1.append(L2[:]) - Copia la lista L2 Dentro de la lista L1
L1 = [['Valor1','Valor2'],['Valor1','Valor2']] - Declara una lista dentro de una lista
print(L[0][0]) - muestra el índice 0 dentro de la lista [0]
L.clear() - Limpia una lista
L.choice - Elige un elemento aleatoriamente dentro de la lista

Diccionarios

Caracter - {}

Principal diferencia con la lista: Tiene índices Literales (Letras/Palabras)

D['Índice Literal'] = 'Valor' - Añade un valor a la variable
del D['Índice Literal'] - Elimina el valor que está en el índice digitado.
D.values() - Devuelve los Valores
D.keys() - Devuelve los Índices Literales
D.items() - Devuelve tanto los Índices(Keys), como los Valores(values)
D.copy() - Copia los valores de un diccionario sin crear enlace, (para utilizar en bucles, etc.)
D1 = sorted(D2.items(), key=itemgetter(índice del diccionario siendo 0 para keys, y 1 para values) ) - Ordena en orden
ascendente un diccionario basado en los valores

Cores No Terminal Python

Ansi

\033[Style;Text;Back;m \033[0;33;44m

Style

0 - ninguno / none
1 - negrita
4 - subrayado
7 - negativo

Text

30 - blanco
31 - rojo
32 - verde
33 - amarillo
34 - azul
35 - magenta
36 - cian
37 - gris

Back

40 - blanco
41 - rojo
42 - verde
43 - amarillo
44 - azul
45 - magenta
46 - cian
47 - gris

Conversão Base De Dados

bin() - convierte de decimal a binario
oct() - convierte de decimal a Octal
hex() - convierte de decimal a hexadecimal

Funciones

Qué Es

Son rutinas, que pueden o no devolver valores y pueden o no usar parámetros

Declaración Básica Función Sin Parámetros

def funcion():
 Rutina/algoritmo

Declaración Básica Función Con Parámetros

def funcion(parametro):
    print('-'*10)
    print(parametro)
print('-'*10)

Empaquetar Parámetros - Reciba Varios Parámetros

def contador(*num) - recibe varios parámetros

Ayuda Interactiva

help(función interna) - Devuelve una ayuda sobre una función interna

Docstrings

Qué Es

Cadena de documentación, es decir, Ayuda (Help) para una función creada por ti

Cómo Crear

Una línea después de definir la función, crear 3 comillas dobles y cerrar todo lo que está adentro es el 'manual de cómo usar tu función'

Ejemplo

def funcion(a,b,c):
    """
    -> aquí va una descripción directa
    :param a: Descripción del parámetro a
:param b: Descripción del parámetro b
:param c: Descripción del parámetro c
:return: si la función tiene retorno o no, y si tiene, cuál es el retorno
    """
    Aquí comienza el código de la función

Parámetros Opcionales

Qué Es

crea parámetros que pueden o no ser insertados sin influir en la funcionalidad del programa

Cómo Crear

colocar un valor para una variable en caso de que no sea insertada

Ejemplo

def funcion(a,b,c=0(si c no recibe ningún valor, recibirá 0)):
    s = a + b + c
print(s)

Alcance De Variables

Definición De Alcance

lugar donde existirá la variable y donde dejará de existir

Alcance Local

existe solo en una parte del programa

Alcance Global

existe en todas partes del programa

Consejo

En Python, al definir una variable global y una local con el mismo nombre, se crearán 2 variables diferentes sin conexión. Para vincularlas, debes usar el comando global

Ejemplo
def funcion():
    global (nombre de la variable)
    aquí comienza el código de la función

Retorno De Resultados

Cómo Crear

colocar el comando return en la última línea de la función junto con una variable que contenga el valor que deseas devolver

Ejemplo

def funcion(a,b,c):
    s = a + b + c
return s

Modularização

Qué Es

la separación del programa principal de las funciones

Focos

  • Dividir un programa grande
  • Aumentar la legibilidad
  • Facilitar el mantenimiento

Cómo Crear

Crear un archivo .py en la misma carpeta que el programa principal con el nombre deseado
dentro poner todas las funciones que necesites, después en el programa principal usar import nombre_del_archivo, o from nombre_del_archivo import nombre_de_la_funcion

Ventajas

  • Organización del código
  • Facilidad de mantenimiento
  • Ocultamiento del código detallado
  • Reutilización en otros proyectos

Pacotes

Qué Es

Una carpeta con varios módulos, permitiendo separar los módulos por tema

Cómo Crear

Solo crear una carpeta; dentro del proyecto ya se reconoce que puede ser potencialmente un paquete
Siempre dentro de un paquete debe haber un archivo llamado: __init__.py donde estarán las funciones

Cuándo Utilizar

Cuando los proyectos comienzan a volverse muy grandes

Manejo De Erroress E Exceções

Tipos De Errores

Sintaxis

Errores de tipeo, el comando digitado no existe

Excepción

son errores que ocurren por una asignación incorrecta, recibir un número diferente al esperado, etc.

Manejo De Errores

Qué Es

verificar si es posible ejecutar algo sin que resulte en un error, y en caso de problema, realizar otro comando

Cómo Crear

poner try: saltar línea y escribir el comando que debe intentar, luego de escribir el bloque de comando saltar línea 'except:' saltar línea y escribir qué hacer en caso de error, y si es necesario else: y poner lo que funcionó. finally:, escribe de todos modos con o sin error

Ejemplo

try:
    Bloque de comando
except: / variante / except Exception as error:
    en caso de error / variante / print(error.__class__) muestra cuál fue el error
(opcional) else:
    en caso de que haya dado resultado
(opcional) finally:
    se ejecuta de cualquier manera, de resultado o error

Except

puedes crear numerosos except y especificar para cada uno de ellos cuál es el error y cómo tratar cada uno:

except TypeError:
    Tratamiento para el error TypeError.
except ValueError:
    Tratamiento para el error ValueError

Manipulação De Arquivo Txt

Preparar Para Leer Guardar Reemplazar

variable = open('Ruta que deseas crear/Leer', Parámetro)

Parámetros Para Crear Leer

‘r’ - Transforma en una variable lista para lectura
‘a’ - Transforma en una variable lista para agregar texto
‘w’ - Transforma en una variable lista para sustituir todo y poner un texto nuevo
después de cada letra se puede poner el + para que, en caso de que el archivo no exista, lo cree. ejemplo: a+
encoding=’utf-8’ - Parámetro Adicional para poder realizar Edición/Lectura y Guardado de archivos con acentos

Guardar Texto

variable_lista_para_[agregar/reemplazar]_texto.write(‘texto deseado\n’) (el ‘\n’ es opcional porque hace salto de línea, pero es muy recomendable porque si agregas múltiples textos no salta la línea automáticamente)

Leer Archivo De Texto

print(variable_lista_para_leer_texto.read()) - lee el valor del archivo incluyendo saltos de línea