Python - Resumen PDF

Title Python - Resumen
Author Constanza Gamarra
Course Informática.
Institution Universidad Nacional de Entre Ríos
Pages 34
File Size 2.3 MB
File Type PDF
Total Downloads 35
Total Views 155

Summary

Resumen informática básica - Python...


Description

Python Python es un lenguaje de programación de alto nivel interpretado y multiparadigma. Potente y fácil de aprender. Incorpora un sistema de programación orientado a objetos. Tipado dinámico. Posee una extensa librería estándar en constante crecimiento. El intérprete y las librerías estándar se pueden distribuir libremente. El modo interactivo en Python significa que su intérprete puede utilizarse directamente una vez puesto en ejecución.

Introducción a Python Elementos del lenguaje Flujos de entrada y salida ⎯ Output -> print(“Mensaje”) : permite mostrar texto en la pantalla. ⎯ Input -> input() : siempre nos devuelve un tipo de dato string, por lo que sí necesitamos que nos devuelva otro tipo de dato, necesitamos convertirlo. La función print() permite incluir variables o expresiones como argumento, lo que nos permite combinar texto y variables. Ejemplo:

Print con salto de línea, compuesto por dos caracteres: ▪ ▪

barra invertida \ n

Palabras reservadas y funciones integradas Todo lenguaje de programación posee un conjunto de palabras reservadas (o keywords) False Await Else Import Pass

None Break Except In Raise

True Class Finally Lambda Return

And Continue For Nonlocal Try

As Def From Not While

Assert Del Global Or With

Aync Elif if pass yield

Además, Python provee una serie de Funciones integradas (o built-in functions) que serán de mucha utilidad. Función

Que hace

Ejemplo

Resultado

abs()

Calcula el valor absoluto de un número que recibe como parámetro y retorna el

x = -10.76 result = abs(x) print(result)

10.76.

input()

lambda()

len()

join()

list() lower()

map()

max()

valor calculado como resultado. Permite la entrada de datos al usuario en Python 3

Se comportan como funciones normales declaradas con la palabra clave def. Resultan útiles cuando se desea definir una función pequeña de forma concisa.

Determina la longitud en caracteres de una cadena. Convierte en cadena utilizando una separación Crea una lista a partir de un elemento Convierte una cadena en Minúsculas

Esta función trabaja de una forma muy similar a filter(), con la diferencia que en lugar de aplicar una condición a un elemento de una lista o secuencia, aplica una función sobre todos los elementos y como resultado se devuelve un iterable. Determina el máximo entre un grupo de números

y =int(input(“Ingrese el número”)) print (y) Principiante square = lambda x: x ** 2 print(square(3))

3

9

3= False

Intermedio lambda_func = lambda x: True if x**2 >= 10 else False lambda_func(3) Retorna False lambda_func(4) # Retorna True

4=True

len(“Hola Python”)

11

Lista = [‘Python’, ‘es’] ‘-‘.join(Lista) x = range (5) print (list(x)) texto = “MaNueL eS mI AmIgO”

‘Python-es’

texto.lower() def doblar(numero): return numero*2

[0, 1, 2, 3, 4] ‘manuel es mi amigo’

[4, 10, 20, 46, 100, 66]

numeros = [2, 5, 10, 23, 50, 33] map(doblar, numeros)

x = [0, 1, 2] print (max(x))

2

min()

Determina el mínimo entre un grupo de números

x = [0, 1, 2]

0

Math.pow(base, exponente) Imprime en pantalla el argumento. Crea un rango de números Reemplaza una cadena por otra

Math.pow(7, 2);

49

print (“Hola”)

Hola

x = range (5) print (list(x)) texto = “ MaNueL eS mI AmIgO”

[0, 1, 2, 3, 4]

print (min(x))

oct() pow() print() range() replace()

Manuel era mi amigo

texto.lower()

round()

sorted() sum()

str() split()

Toma como argumento un número de coma flotante y retorna un número entero según las reglas del redondeo. Retorna una nueva lista ordenada Suma el total de una lista de números Convierte un valor numérico a texto Convierte una cadena con un separador en una lista

print (texto.replace (‘es’, ‘era’)) round(1.539, 2)

sorted([5, 2, 3, 1, 4]) x = [0, 1, 2] print (sum(x)) str(22) a = (“hola esto sera una lista”)

1.54

[1, 2, 3, 4, 5] 3

‘22’ [‘hola’, ‘esto’, ‘sera’, ‘una’, ‘lista’]

Lista2 = a.split()

tuple() type() upper()

Crea o convierte en una tupla Devuelve el tipo de un elemento Convierte una cadena en Mayúsculas

Variables y tipos de caracteres Los tipos de dato más comunes son:

print (Lista2) print(tuple(x))

(0, 1, 2, 3, 4)

type(x)

texto = “Manuel es mi amigo” texto.upper()

‘MANUEL ES MI AMIGO’

⎯ ⎯ ⎯ ⎯

Numeros enteros (int) Numeros flotantes (float) Cadena de caracteres (string) Booleanos (bool)

Variables Representan un espacio de memoria (Memoria Principal) de la computadora. Existen reglas para escribirlas: 1. Son secuencias arbitrariamente largas de letras y dígitos 2. La secuencia debe empezar con una letra 3. NO pueden ser una palabra reservada del lenguaje

Declaraciones Son instrucciones que puede ejecutar un intérprete de Python. Declaraciones de asignación Son instrucciones que almacenan un valor en una variable. Ejemplo: Number= 5 -> Declaración de asignación ( = ).Se asigna el valor 5 a la variable “number”.

Comentarios Inician con el símbolo # . Permiten añadir información adicional sobre el código. Los comentarios son ignorados por el intérprete.

Literales Es un dato sin procesar que se asigna a una variable o constante. Constituyen valores con significado propio y único.

Estructuras de control Son sentencias que permiten controlar el flujo del programa. Existen diferentes estructuras de control. Las principales son: 1. Condicionales 2. Bucles Condicionales Es una instrucción o grupo de instrucciones que se pueden ejecutar o no en función del valor de una condición. If puede traducirse a “sí tal cosa , entonces” . Else puede traducirse como “sino” . Y Elif podría traducirse como Else If y se utiliza para enlazar varios else if sin aumentar las tabulaciones. Ejemplo:

Ojo: ¡El “==” es un operador de comparación (compara si es exactamente igual)! If + Else Luego de una sentencia if podemos agregar un else (“Si no”) para que se ejecutara otro código en caso que la condición no se cumpliera y no nos pasará como en el último ejemplo:

If, elif y else En este caso agregaremos dos elif al mismo código para comprobar si a fuera igual a cinco o a seis:

Bucles Es la ejecución continua de un determinado bloque de código mientras una condición asignada se cumple. Tipos de bucles: Bucles for Iteran sobre los ítem de cualquier secuencia (lista, cadena, diccionario) en el orden en que aparecen en la secuencia. Sintaxis: Se coloca la sentencia for seguida de la variable donde se almacenarán los ítem y luego del operador “in” el elemento a iterar:

Una vez que se termina de iterar el elemento el bucle se detiene, es decir que se ejecutará mientras se cumpla la condición, veamos algunos ejemplos. En este ejemplo vamos a iterar una lista de números y vamos a extraer solo aquellos que son pares:

Bucle While Nos permite ejecutar un bloque de código continuamente mientras la condición sea verdadera e incluso podemos crear bucles infinitos. Sintaxis: Es realmente muy sencilla, escribimos la palabra reservada While seguida de la condición y dos puntos, debajo de esta se encontrará el cuerpo del mismo.

Veamos algunos ejemplos desde el mas sencillo para entender el funcionamiento y uso de un bucle while: Vamos a ver un ejemplo clásico de bucle while donde creamos un contador e imprimimos el resultado hasta que la condición deje de cumplirse, en este caso contaremos del 1 al 10.

Interrupci ón y modificación del fl ujo de iteraciones en bucles : ⎯ Break: Esta instrucción se utiliza para finalizar un bucle, es decir, salir de el y continuar con la ejecución del resto de instrucciones del programa. ⎯ Continue: obliga al interprete a volver al inicio del bucle obviando todas las instrucciones o iteraciones debajo de él. En conclusión, el bucle For podría traducirse como “para” y el While como “mientras”. En el caso de for no nos permite realizar un ciclo infinito. A diferencia de while que si nos brinda esa posibilidad, a la vez que desde el comienzo no están declaradas al cantidad de iteraciones a realizar.

Funciones y modularidad Función Una función es un bloque de código que tiene asociado un nombre, de manera que cada vez que se quiera ejecutar el bloque de código basta con invocar el nombre de la función.

Argumentos de la llamada a función: Los valores que se pasan a la función en una llamada o invocación concreta de ella se conocen como argumentos y se asocian a los parámetros de la declaración de la función. Valor de retorno de una Función: Una función puede devolver una variable de cualquier tipo tras su invocación. Para ello la variable a devolver o “retornar” debe escribirse detrás de la palabra reservada return. Si no se indica ninguna variable o valor de retorno, la función “no devolverá nada” Argumentos de la llamada a función Pueden ser “posicionales” y “por nombre” ⎯ Argumentos posicionales: Se asocian a los parámetros de la función en el mismo orden que aparecen en la definición de la función ⎯ Argumentos por nombre: Se indica explícitamente el nombre del parámetroal que se asocia un argumento de la forma = En Python para crear una función recurrimos a la instrucción def y seguido el nombre que le queramos dar a la función siempre y cuando lo hagamos utilizando la sintaxis correcta al igual que cuando creamos una variable, continuamos con paréntesis y finalizamos con dos puntos de la siguiente manera. Sintaxis:

Al incluir un “return” le estamos diciendo a python que retorne inmediatamente el valor de resultado de la función y use la siguiente expresión como un valor de retorno” Ejemplo:

Utilización de funciones

Ventajes del uso de funciones 1. Permiten subdividir un problema en diferentes niveles de complejidad a. En cada nivel existe, naturalmente, una complejidad reducida 2. Permiten modularizar el código en unidades lógicas (una por cada función) 3. Facilitan el desarrollo en equipo 4. Facilitan la prueba y depuración 5. Optimizan el uso de memoria 6. Evitan el “copy/paste” (copiar y pegar código) 7. Permiten crear bibliotecas, o módulos, para reutilizar Pas aje de parámetros Con frecuencia los argumentos de una función se denominan “parámetros”. En Python, existen las siguientes alternativas de pasaje de argumentos. ⎯ Número indeterminado Es posible pasar un número variable de argumentos a un parámetro. Esto se puede hacer de dos formas: o *parámetro (el asterisco * es importante): Se antepone un asterisco al nombre del parámetro y en la invocación de la función se pasa el número variable de argumentos separados por comas. Los argumentos se guardan en una tupla que se asocia al parámetro.

o

** parámetro (el doble asterisco ** es importante): Se anteponen dos asteriscos al nombre del parámetro y en la invocación de la función se pasa el número variable de argumentos por pares nombre = valor, separados por comas. Los argumentos se guardan en un diccionario que se asocia al parámetro.

⎯ Pasaje de parámetros: por referencia En Python el paso de argumentos a una función es siempre por referencia, es decir, cualquier cambio que se haga dentro de la función mediante el parámetro asociado afectará a la variable original, siempre y cuando este sea mutable. o Tipos de dato inmutables: su valor no puede cambiar a menos que sea sobrescrito. Ejemplos: números, cadenas, booleanos, tuplas o Datos mutables: su valor puede cambiar. Ejemplos: listas, diccionarios, conjuntos Ejemplos:

Modularización de un programa Para modularizar un programa, las funciones que cumplen tareas comunes se “agrupan” en un único archivo de código fuente . En el programa principal, luego, se puede “importar” este código para su reutilización tantas veces como sea necesario

Funciones anónimas Son funciones que se definen in-situ sin necesidad de asignarles un nombre concreto, aunque pueden ser asignadas a una “variable” que oficia de nombre de la función . Ejemplos:

Funciones con comportamiento dependiente del tipo de dato Se utiliza la función integrada isinstance(). Obsérvese el ejemplo siguiente:

Recursividad Una función recursiva es una función que en su cuerpo contiene una llama a sí misma Esta llamada puede ser “directa” si la función se llama directamente a sí misma, o “indirecta” si la función llama a otra función que a su vez invoca a la primera. En cualquier caso, es necesaria una condición de parada o finalización. Retornar múltiples valores Para retornar múltiples valores en una función, deben separarse las variables a retornadas con coma luego de la palabra reservada return. Ejemplo:

DOCSTRINGS En Python todos los objetos cuentan con una variable especial llamada doc gracias a la que podemos describir para qué sirven los y cómo se usan los objetos. Estas variables reciben el nombre de docstrings, cadenas de documentación.

Programación Orientada a Objetos La Programación Orientada a Objetos (POO) es un paradigma (o modelo) de programación donde se organiza el código en unidades denominadas clases. A partir de las clases se crean objetos. Los objetos se relacionan entre sí para conseguir los objetivos del programa. La POO es una forma de programar que permite expresar entidades del programa de forma similar a como solemos expresarnos en forma cotidiana, en la vida real. Clases Proveen una forma de empaquetar datos y funcionalidad juntos ⎯ Datos: son “variables” que se definen en la clase . Las variables dentro de una clase se denominan “atributos” . ⎯ Funcionalidad: son “funciones” que se definen en la clase. Las funciones dentro de una clase se denominan “métodos” Objetos Según esté indicado en la definición de la clase, cada objeto de una clase puede tener atributos para mantener su estado Las instancias de clase (u objetos) también pueden tener métodos (definidos por su clase) para modificar su estado.

Identidad de objetos La identidad de un objeto significa que: ⎯ Cada objeto reside en su propio espacio de Memoria ⎯ Cada objeto representa un “espacio de nombres” (de variables). Esto es, un lugar donde las variables “residen” y pueden encontrarse sin confusión. Esto permite que se puedan crear dos objetos del mismo tipo y con las mismas variables, pero que cada uno tenga “memoria” de sus propias variables. “Espacio de nombres”, “ámbito” y “contexto” son sinónimos. Entonces, por ejemplo, se puede decir que el “DNI” de una Persona, está en su espacio de nombres o en su ámbito. Fuera de este contexto, el “DNI” no existe, o tiene una interpretación diferente.

Tipos de datos definido por el programador Un tipo de dato definido por el programador (o clase) se puede definir de diferentes formas. La más sencilla es la siguiente:

Las definiciones de clases deben ejecutarse antes de que tengan efecto alguno. Las declaraciones dentro de una clase son definiciones de atributos y métodos. Cuando se ingresa una definición de clase, se crea un nuevo espacio de nombres, el cual se utiliza como ámbito local; por lo tanto, todas las asignaciones a variables locales van a este nuevo ámbito. En particular, las definiciones de funciones (o métodos) asocian el nombre de las funciones nuevas a este espacio. En Python existen dos tipos de definiciones de objetos: 1. Los objetos clase: Las definiciones de atributos y métodos en un objeto clase. Ejemplo:

MyClass: El nombre de la clase define el “espacio de nombre” del atributo de clase “i” y el método de clase “f()”. Para acceder al atributo “i” se debe hacer “MyClass.i” utilizando el nombre de la clase como prefijo. Para acceder al método “f()” se debe hacer “MyClass.f()” utilizando el nombre de la clase como prefijo. “.” es el operador de acceso a miembro. El miembro puede ser un atributo (variable) o un método (funcion)

2. Los objetos instancia: Las definiciones de atributos y métodos en un objeto instancia. Se utiliza la palabra reservada “self” para indicar que un atributo o método es de instancia . Ejemplo:

Self: Permite identificar que el método y los atributos pertenecen al “ámbito” de un objeto. Notar que se utiliza “self” como primer argumento formal y como prefijo delante del nombre de los atributos (self.r y self.i en el ejemplo) Ambas definiciones se pueden combinar. Vari ables Variables de clase Son para atributos y métodos compartidos por todas las instancias de la clase. Las variables (o atributos) de instancia Son para datos únicos de cada instancia. Convención de accesibilidad a miembros Existen tres convenciones de accesibilidad a miembros de una clase: 1. Sin guión bajo “”: Se considera nivel de acceso público desde fuera de la clase. 2. Dos guión bajo “__”: Se considera nivel de acceso privado desde fuera de la clase 3. Un guión bajo “_”: Se considera nivel de acceso protegido desde fuera de la clase Métodos automáticos

Se denominan métodos automáticos a aquellos que son invocados sin ser escritos explícitamente. Entre los más importantes se encuentran: 1. 2. 3. 4.

__init__(self, ...):Permite inicializar un objeto definiendo sus atributos __del__(self, ...): Permite gestionar la destrucción de un objeto __str__(self, ...): Permite especificar cómo se “imprime” un objeto en la función integrada print.

Ejemplo clase: Empleado Se desea crear una clase para modelar empleados. La clase modelará un único empleado, por lo tanto, su nombre debe ser Empleado. La clase debe tener un atributo de clase para considerar la cantidad total de empleados que existen y, además, los atributos de instancia nombre, salario y horas semanales. Luego: 1. Crear una lista de 4 (cuatro) empleados con algunos valores. 2. Mostrar la cantidad de empleados antes y después de crear la lista utilizando la variable de clase. 3. Determinar y mostrar el empleado que tienen menor salario. 4. Determinar y mostrar el número de horas promedio que trabaja un empleado. 5. Borrar el empleado de la posición 1 de la lista (sería el segundo empleado) con la palabra reservada del y volver a mostrar la cantidad de empleados utilizando la variable de clase.

Extensión de código con clas es La extensión de código utilizando clases es la posibilidad de añadir funcionalidad sin necesidad de modificar el código existente. Existen dos estrategias generales de lograr este objetivos utilizando clases 1. Contención: Consiste en construir clases utilizando instancias de otras clases para su definición Ataca la complejidad de un problema dividiéndolo en partes más pequeñas y fáciles de codificar, comprender, depurar y mantener Objetos más complejos (con más partes) se construyen a partir de agrupar inteligentemente objetos más simples. Ejemplos: un triángulo está formado por tres puntos, un stock está compuesto por un conjunto de productos, un banco posee una colección de cuentas bancarias, un curso posee un conjunto de estudiantes, y así sucesivamente. 2. Herencia: Consiste colocar los atributos y métodos comunes de varias clases en una única clase, llamada “clase ancestra” o “clase base” y, luego, construir a partir de esta las clases derivadas. (NO utiliza instancias) Ataca la complejidad de un problema generando “categorías” de objetos con atributos y métodos comunes que se agrupan en las denominadas superclases. También se las denomina “clases base” o “clases ancestras”. A partir de una, o más de una, clase se pueden definir nuevas clases denominadas subclases. También se denominan “clases derivadas” o “c...


Similar Free PDFs