Sintaxis Python V2
Sintaxis Python V2
• PyCharm (https://www.jetbrains.com/shop/eform/students)
• Wing (https://wingware.com/downloads/wing-personal)
INTERPRETADO VS COMPILADO
• Interpretado
• Compilado
FUNCIONES BÁSICAS DE UN LENGUAJE DE
PROGRAMACIÓN
• Entrada: Recibir datos del teclado, o un archivo u otro aparato.
• Operación condicional: Probar la veracidad de alguna condición y ejecutar una secuencia de instrucciones apropiada.
• Repetición: Ejecutar alguna acción repetidas veces, normalmente con alguna variación.
DEPURACIÓN
• Errores sintácticos
variable = valor
Operador Descripción
() Paréntesis
** Exponenciación
*, /, %,// Multiplicación, división, modulo y división entera
+, - Suma y resta
<=, <, >, >= Operadores de comparación
==, != Operadores de igualdad
=, %=, /=, //=, -=, +=, *=, **= Operadores de asignación
Is, is not Operadores de identidad
In, not in Operadores de membrecía
not, or, and Operadores lógicos
OPERACIONES SOBRE CADENAS DE
CARACTERES
• Concatenación de cadenas (+)
• hola = “hola”
• mundo = “mundo”
• print(hola + “ “ + mundo)
• hola mundo
• La composición es tomar todos estos elementos y combinarlos, lo cual ahorra espacio en referencia a líneas de código escritas, sin
embargo, genera sentencias más complejas las cuales puede ser difícil mantener y hacer cambios.
• num = 15
• print(12 + num)
• 27
COMENTARIOS
• Para realizar comentarios de una sola línea se usa el símbolo #, lo escrito después del
símbolo y hasta el final de la línea es ignorado por el lenguaje de programación
• Para realizar comentarios de múltiples líneas se usan tres comillas dobles seguidas (“””)
al principio y al final de texto que se quiere comentar
FUNCIONES
• Las funciones pueden tener parámetros, estos deben ir encerrados entre paréntesis
• La función print de Python nos imprime en consola un valor dado explícitamente o el valor contenido en una función
• print(32)
• 32
• entero = 125
• print(entero)
• 125
CONVERSIÓN DE TIPOS (1)
• Python tiene funciones que permiten realizar conversión entre tipos de variables siempre y cuando
sea posible hacer la conversión
• str(False)
• ‘False’
• int(False)
• 0
• bool(1)
• True
• int(‘False’)
• ValueError: invalid literal for int() with base 10: 'False’
CONVERSIÓN DE TIPOS (2)
• float(1)
• 1,0
• int(1.3) #Siempre redondea hacia abajo
• 1
• bool(1)
• True
• int(1,3)
• TypeError: int() can't convert non-string with explicit base
COERCIÓN DE TIPOS
• Una posible solución es convertir uno de los valores a un flotante y luego realizar la
operación.
IMPORTAR MÓDULOS (1)
• Un módulo es un archivo que contiene funciones que extienden la funcionalidad base del lenguaje de
programación.
• Todos los lenguajes de programación soportan de alguna manera importar módulos, ya sean desarrollados por el
mismo creador del lenguaje de programación o desarrollados por terceros y que se ponen a disposición de la
comunidad.
• Uno de los módulos más útiles de Python es el módulo math que contiene funciones matemáticas como el seno,
coseno, logaritmo, etc., y constantes como pi o e, para usar estas funciones es necesario agregar la instrucción
“import math”.
IMPORTAR MÓDULOS (2)
• Una vez importado el módulo, debemos llamar a las funciones poniendo el nombre del módulo importado, seguido de un
punto y la función que deseamos utilizar.
• math.log2(x)
• Además, si solo es necesario importar algunas funciones específicas de un módulo, esto se puede hacer de la siguiente
manera, donde también se puede poner alias a cada función importada
• from math import log2 as l2, log10
COMPOSICIÓN
• import math as m
• x = m.exp(m.log(10))
• Utiliza el valor que retorna el llamado a la función m.log(10) y evalúa la función m.exp()
con ese valor.
DEFINIR FUNCIONES NUEVAS (1)
• Permite la reutilización de código, ya que se define un proceso en una función y se invoca en las partes donde sea
necesario.
• Ayuda a la mantenibilidad de la aplicación, ya que si se requiere un cambio solo debe hacerse en la definición de la
función y no en cada parte donde se copió y pegó el mismo código.
• Para que una sentencia se considere que pertenece a una función, esta debe estar indentada
bajo la definición de la función
• Los parámetros que se envían a una función son locales, es decir, estas variables no existen
por fuera de la función, si existe una variable por fuera de una función con un nombre igual,
siguen siendo variables diferentes.
DEFINIR FUNCIONES NUEVAS (3)
• Sin embargo, las variables definidas por fuera de las funciones hacen el papel de variables
globales, es decir se pueden usar en cualquier parte y si una función define como parámetro una
variable con un nombre igual a una variable global, el valor local enmascara el valor global.
• Todas las variables definidas por fuera de la función __main__ y de cualquier otra función
pertenecen a la función __main__
ESTRUCTURAS CONDICIONALES (1)
• Las estructuras condicionales permiten probar si ciertas condiciones se cumplen y basado en esto, cambiar el
comportamiento del programa.
• if x < 0: #Cabecera
• print (“x es negativo”)
• Las sentencias indentadas bajo la cabecera hacen parte del bloque del condicional
• if x % 2 == 0:
• print (x, “ es par”)
• else:
• print (x, “ es impar”)
ESTRUCTURAS CONDICIONALES (3)
• switch – case
• Estructura que no existe en Python pero que puede ser emulada con condicionales if – elif
– else
RECURSIVIDAD
• La funciones recursivas deben tener una condición de salida o caso base que se debe asegurar que
se cumple en algún momento
fibonacc
n5
i
n4 n3
n2 n1
n1
ENTRADA POR TECLADO
• Python tiene una función para recibir datos del usuario mediante el teclado
• input()
ITERACIÓN (1)
• La recursividad es utilizada para realizar procesos repetitivos, a los cual también se llama
iteración
• Para que este bucle funcione, es necesario inicializar sumatoria y n, ya que no se puede
acumular en una variable que no está creada ni inicializada
ITERACIÓN (3)
• Encapsular es tomar una porción de código y convertirlo en una función, es decir, crear
componentes que puedan ser reutilizables