SlideShare una empresa de Scribd logo
1 de 37
PYTHON Lección No. 3 M.Sc. Victor Pando Beltrán [email_address] http://www.civil-uancv.pe/aulavirtual
AGENDA ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
RECOMENDACIONES ,[object Object],[object Object],[object Object],[object Object]
Funciones (1/4) La estructura fundamental de programación de los lenguajes estructurados son  las funciones. Una función es un conjunto de instrucciones que se la invoca  mediante un nombre y que luego de ejecutado el algoritmo puede retornar un valor. Un programa estructurado no es más que un conjunto de funciones que en conjunto  resuelven un problema complejo. Veamos la sintaxis en Python para definir y llamar a una función: def presentacion():  print 'Primer mensaje.'  print 'Segundo mensaje.'  def fin():  print 'Ultimo mensaje.'  presentacion()  fin()
Funciones (2/4) Para definir una función utilizamos la palabra clave 'def' seguida por el nombre de la función, luego si no tiene parámetros como este caso debe ir paréntesis abiertos y cerrados y dos puntos. Seguidamente las instrucciones de la función se indentan a derecha.  def presentacion():  print 'Primer mensaje.'  print 'Segundo mensaje.'  Una función se ejecuta cuando se la llama por su nombre:  presentacion() Es importante notar que primero debemos declarar la función y luego llamarla.
Funciones (3/4) Una función puede tener parámetros de entrada, por ejemplo si queremos una función que reciba dos enteros y luego nos imprima el mayor, el algoritmo es el siguiente:  def imprimirmayor(valor1,valor2):  if valor1>valor2:  print valor1  else:  print valor2  imprimirmayor(4,5)  x1=20  x2=30  imprimirmayor(x1,x2)  Los parámetros de la función se indican en la cabecera de la función separados  por comas. Cuando llamamos a la función estamos obligados a enviarle datos a los dos  parámetros.
Funciones (4/4) Podemos enviarle directamente los valores:  imprimirmayor(4,5)  O podemos enviarle variables previamente inicializadas:  x1=20  x2=30  imprimirmayor(x1,x2)  Como podemos notar con este ejemplo una función puede ser llamada más  de una vez (en este caso la llamamos dos veces)
Problema resuelto Confeccionar una función que reciba un entero y luego imprima la tabla de  multiplicar de dicho valor (por ejemplo si recibe un 3 luego debe mostrar del 3  hasta el 30 de 3 en 3)  def mostrartabla(num): inicio=num fin=num*10 while inicio<=fin: print inicio print '-' inicio=inicio+num mostrartabla(3)
Problema propuesto Desarrollar una función que reciba dos enteros y nos muestre todos los valores  comprendidos entre ellos (el segundo parámetro siempre debe ser mayor al  primero)  def rangovalores(v1,v2):  inicio=v1  while inicio<=v2:  print inicio  inicio=inicio+1  rangovalores(2,20)
Funciones con retorno de dato (1/2) Hay muchas situaciones donde queremos que la función luego de ejecutarse  retorne un valor y se almacene en una variable desde donde la llamamos. Por ejemplo si necesitamos una función que reciba tres enteros y nos retorne  el mayor la sintaxis será la siguiente:  def retornarmayor(x1,x2,x3):  if x1<x2 and x1<x3:  return x1  elif x2<x3:  return x2  else: return x3  may=retornarmayor(4,5,3)  print may  Como podemos observar la instrucción return indica el valor devuelto por la función.
Funciones con retorno de dato (2/2) El valor retornado se almacena en una variable:  may=retornarmayor(4,5,3)  Podemos inclusive mostrar directamente el valor retornado por la función:  print retornarmayor(40,5,3)  O utilizarlo en una condición:  if retornarmayor(40,5,3)<20:  print 'El valor devuelto es mayor a 20'
Problema resuelto Confeccionar una función que reciba tres enteros y nos retorne la suma de dichos valores.  def sumar(x1,x2,x3): su=x1+x2+x3 return su total=sumar(10,30,42) print total
Problema Propuesto Desarrollar una función que reciba tres enteros y nos retorne la suma de los dos más  grandes.  def sumarmayores(x1,x2,x3):  if x1>x2 and x1>x3:  if x2>x3:  return x1+x2  else:  return x1+x3  elif x2>x3:  if x3>x1:  return x2+x3  else:  return x2+x1  else:  if x2>x1:  return x3+x2  else:  return x3+x1  print sumarmayores(100,200,30)
Estructura de datos tipo tupla (1/4) Hasta ahora hemos empleado variables que permiten almacenar un único valor. En Python existen varias estructuras de datos que permiten almacenar un  conjunto de datos. La primera que presentaremos es la tupla: Una tupla es una colección de datos no necesariamente del mismo tipo que se  los accede por medio de subíndices. Definición de una tupla: tupla1=('juan',18,1.92)  '  Hemos definido una tupla de tres elementos. El primer elemento es de tipo  cadena de caracteres, el segundo un entero y finalmente un valor flotante. Cada elemento de una tupla se los separa por una coma.
Estructura de datos tipo tupla (2/4) Para acceder a los elementos lo hacemos por medio del nombre de la tupla  y un subíndice numérico:  print tupla1[0] Los elementos de la tupla comienzan a numerarse a partir de cero y utilizamos los corchetes para hacer referencia al subíndice. Si queremos en algún momento saber la cantidad de elementos de una tupla  debemos llamar la función len: print len(tupla1) #imprime un 3
Estructura de datos tipo tupla (3/4) con dicha función podemos disponer una estructura repetitiva para imprimir todas las componentes de la tupla con el siguiente algoritmo:  :  tupla1=('juan',18,1.92)  indice=0  while indice<len(tupla1):  print tupla1[indice]  indice=indice+1  Veremos en el próximo concepto que hay una estructura repetitiva que nos  facilita recorrer los elementos de una tupla. Una vez definida la tupla no se pueden modificar los valores almacenados. La función print puede recibir como parámetro una tupla y se encarga de  mostrarla en forma completa: print tupla1
Estructura de datos tipo tupla (4/4) De todos modos cuando tenemos que acceder a algún elemento de la tupla  debemos hacerlo mediante un subíndice entre corchetes. La característica fundamental de una tupla es que una vez creada no podemos modificar sus elementos, ni tampoco agregar o eliminar.
Problema resuelto Definir dos tuplas que almacenen en una los nombres de los meses y en otra la  cantidad de días que tiene cada mes del año. Luego mostrar el contenido  almacenado en las mismas.  meses=('enero','febrero','marzo','abril','mayo','junio','julio','agosto', 'septiembre','octubre','noviembre','diciembre') cantidaddias=(31,28,31,30,31,30,31,31,30,31,30,31) indice=0 while indice<len(meses): print meses[indice] print ':' print cantidaddias[indice] print '<br>' indice=indice+1
Problema Propuesto Definir una tupla que almacene 5 enteros. Implementar un algoritmo que imprima la suma de todos los elementos.  tupla1=(6,33,56,3,45) suma=0 indice=0  while indice<len(tupla1): suma=suma+tupla1[indice] indice=indice+1 print 'El contenido de la tupla es:‘ print tupla1 print 'La suma es:‘ print suma
Estructura repetitiva for in para recorrer una tupla Para recorrer una tupla es muy común utilizar la estructura repetitiva for. Veamos con un ejemplo la sintaxis de esta estructura repetitiva:  tupla1=('juan',23,1.92)  for elemento in tupla1:  print elemento  Como podemos ver la instrucción for requiere una variable (en este ejemplo  llamada elemento), luego la palabra clave in y por último la tupla. El bloque del for se ejecuta tantas veces como elementos tenga la tupla, y en cada vuelta del for la variable elemento almacena un valor de la tupla1. Esta estructura repetitiva se adapta mucho mejor que el while para recorrer  este tipo de estructuras de datos.
Problema resuelto Definir una tupla con 5 valores enteros. Imprimir los valores mayores o iguales a 18.  tupla1=(45,34,2,56,1) for elemento in tupla1: if elemento>=18: print elemento
Problema Propuesto Definir una tupla con 10 edades de personas. Imprimir la cantidad de personas con edades superiores a 20.  tupla1=(45,78,3,56,3,45,34,2,56,1)  cantidad=0  for elemento in tupla1:  if elemento>20:  cantidad=cantidad+1  print 'Cantidad de personas con edades superiores a 20:'  print cantidad
Porciones de tuplas (1/2) El lenguaje Python nos permite rescatar una &quot;porción&quot; de una tupla, es decir un trozo de la misma. Si tenemos la siguiente tupla: tupla1=(1,7,20,40,51,3)  tupla2=tupla1[0:4]  print tupla2  El resultado es una tupla con cuatro valores:  (1,7,20,40)  Es decir indicamos como subíndice un rango de valores, en este caso desde la posición 0 hasta la posición 4 sin incluirla.
Porciones de tuplas (2/2) Podemos no indicar alguno de los dos rangos:  tupla1=(1,7,20,40,51,3)  tupla2=tupla1[3:]  print tupla2  El resultado es una tupla con tres valores, desde la posición 3 hasta el final de la tupla:  (40, 51, 3)   En caso de no indicar el primer rango:  tupla1=(1,7,20,40,51,3)  tupla2=tupla1[:2] print tupla2  El resultado es una tupla con dos valores, desde el principio de la tupla hasta  la posición 2 sin incluirla:  (1, 7)
Problema resuelto Definir una tupla con los nombres de los meses. Generar dos tuplas que almacenen  los primeros 6 meses la primera y los siguientes 6 meses la segunda.  meses=('enero','febrero','marzo','abril','mayo','junio','julio','agosto', 'septiembre','octubre','noviembre','diciembre') tupla1=meses[:6] tupla2=meses[6:] print tupla1 print tupla2
Problema Propuesto Almacenar en una tupla 5 nombres. Luego generar un valor aleatorio entre 2 y 4. Copiar a una tupla el nombre de la posición indicada por el valor aleatorio y los nombres que se encuentran en la posición anterior y posterior.  import random  nombre=('juan','ana','luis','carlos','roman')  ale=random.randint(1,3) tresnombres=nombre[ale-1:ale+2]  print tresnombres
Estructura de datos tipo cadena de caracteres (string) (1/5) Una cadena de caracteres permite almacenar un conjunto de caracteres.  Su funcionamiento es similar a una tupla. Para inicializar un string utilizamos el operador de asignación.  nombre='Juan Pablo'  Podemos utilizar las comillas simples o dobles para su inicialización:  mail='jose@gmail.com'  O mail=&quot;jose@gmail.com&quot;
Estructura de datos tipo cadena de caracteres (string) (2/5) Para conocer el largo de un string podemos utilizar la función len:  print len(mail) Para acceder a un caracter particular del string lo hacemos indicando un  subíndice entre corchetes:  print mail[0] #Imprimimos el primer caracter  El lenguaje Python nos permite rescatar una &quot;porción&quot; de un string con la misma  sintaxis que trabajamos las tuplas:  nombre='Jose Maria'  print nombre[1:4] #ose  print nombre[:4] #Jose  print nombre[5:] #Maria
Estructura de datos tipo cadena de caracteres (string) (3/5) Los string son inmutables, es decir que no podemos modificar su contenido luego  de ser inicializados:  titulo='Administracion'  titulo[0]='X' # Esto produce un error  Esto no significa que no podemos utilizar la variable para que referencie a otro string:  nombre='Jose'  print nombre  nombre='Ana'  print nombre  Para concatenar string Python permite utilizar el operador +. Si tenemos tres string y queremos almacenar sus contenidos en un cuarto  string podemos codificarlo de la siguiente manera:  cadena1='uno'  cadena2='dos'  cadena3='tres'  total=cadena1+cadena2+cadena3  print total #unodostres
Estructura de datos tipo cadena de caracteres (string) (4/5) También Python define el operador * para los string. El resultado de multiplicar un string por un entero es otro string que repite el string original tantas veces  como indica el número.  #si queremos un string con 80 caracteres de subrayado,  #la forma más sencilla es utilizar la siguiente expresión:  separador='_'*80  print separador  Los operadores relacionales definidos para los string son:  Mayor  >= Mayor o igual  < Menor  <= Menor o igual  == Igual  != Distinto
Estructura de datos tipo cadena de caracteres (string) (5/5) Si queremos saber si un string es mayor alfabéticamente que otro utilizamos el operador >  nombre1='CARLOS'  nombre2='ANABEL'  if nombre1>nombre2:  print nombre1+' es mayor alfabéticamente que '+nombre2  si queremos saber si dos variables tienes en mismo contenido:  nombre1='CARLOS'  nombre2='CARLOS'  if nombre1==nombre2:  print 'Las dos variables tienen el mismo contenido:'+nombre1
Problema resuelto (1/2) Elaborar una función que reciba un string y retorne la cantidad de vocales que tiene.  def cantidadvocales(cadena): cant=0 for letra in cadena: if letra=='a': cant=cant+1 if letra=='e': cant=cant+1 if letra=='i': cant=cant+1 if letra=='o': cant=cant+1 if letra=='u': cant=cant+1 if letra=='A': cant=cant+1
Problema resuelto (2/2) if letra=='E': cant=cant+1 if letra=='I': cant=cant+1 if letra=='O': cant=cant+1 if letra=='U': cant=cant+1 return cant print 'Cantidad de vocales en la palabra Hola:' print cantidadvocales('Hola') print 'Cantidad de vocales en la palabra Computadora:' print cantidadvocales('Computadora')
Problema Propuesto (1/2) Elaborar las siguientes funciones: - Una función que reciba un string y nos retorne el primer caracter. - Una función que reciba un apellido y un nombre, y nos retorne un único string con el apellido y nombre concatenados y separados por una coma. - Una función que reciba dos string y nos retorne el que tiene menos caracteres.  def primercaracter(cadena):  return cadena[0]  def concatenar(apellido,nombre):  return apellido+','+nombre  def menor(cadena1,cadena2):  if len(cadena1)<len(cadena2):  return cadena1  else:  return cadena2
Problema Propuesto (2/2) cad='Hola Mundo'  print 'Primer caracter de '+cad+' es '+primercaracter(cad)  nom='juan‘ ape='rodriguez'  print 'Apellido y nombre concatenados:'+concatenar(ape,nom)  cad1='Hola'  cad2='Fin'  print 'De: '+cad1+' y '+cad2+' tiene menos caracteres '+menor(cad1,cad2)
BIBLIOGRAFÍA ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
 

Más contenido relacionado

La actualidad más candente

Semana 3 Fundamentos de Python(Funciones y Métodos)
Semana 3   Fundamentos de Python(Funciones y Métodos)Semana 3   Fundamentos de Python(Funciones y Métodos)
Semana 3 Fundamentos de Python(Funciones y Métodos)Richard Eliseo Mendoza Gafaro
 
Semana 2 Fundamentos de Python(Entradas, Salidas y Operaciones Aritméticas)
Semana 2   Fundamentos de Python(Entradas, Salidas y Operaciones Aritméticas)Semana 2   Fundamentos de Python(Entradas, Salidas y Operaciones Aritméticas)
Semana 2 Fundamentos de Python(Entradas, Salidas y Operaciones Aritméticas)Richard Eliseo Mendoza Gafaro
 
Apuntadores y direccionamiento
Apuntadores y direccionamientoApuntadores y direccionamiento
Apuntadores y direccionamientoSergio Ramos
 
Problemas propuestos clase 0-1
Problemas propuestos  clase 0-1Problemas propuestos  clase 0-1
Problemas propuestos clase 0-1Jefferson Prieto
 
Clase 11- fundamentos de la programacion
Clase 11- fundamentos de la programacionClase 11- fundamentos de la programacion
Clase 11- fundamentos de la programaciondiego MC
 
Script de Punteros a Funciones
Script de Punteros a FuncionesScript de Punteros a Funciones
Script de Punteros a FuncionesAnesGy SD
 
Semana 4 Estructuras de datos(Tuplas, Conjuntos y Diccionarios)
Semana 4   Estructuras de datos(Tuplas, Conjuntos y Diccionarios)Semana 4   Estructuras de datos(Tuplas, Conjuntos y Diccionarios)
Semana 4 Estructuras de datos(Tuplas, Conjuntos y Diccionarios)Richard Eliseo Mendoza Gafaro
 
Ejercicio propuesto 2
Ejercicio propuesto 2Ejercicio propuesto 2
Ejercicio propuesto 2jfranco_123
 
Algoritmos - Funciones C++
Algoritmos - Funciones C++ Algoritmos - Funciones C++
Algoritmos - Funciones C++ Ronal Palomino
 
Programación de Videojuegos con Python y Pilas (II)
Programación de Videojuegos con Python y Pilas (II)Programación de Videojuegos con Python y Pilas (II)
Programación de Videojuegos con Python y Pilas (II)Fernando Salamero
 

La actualidad más candente (20)

Ejercicios con Python parte 05
Ejercicios con Python parte 05Ejercicios con Python parte 05
Ejercicios con Python parte 05
 
Ejercicios Python parte 4
Ejercicios Python parte 4Ejercicios Python parte 4
Ejercicios Python parte 4
 
Maple v comandos
Maple v comandosMaple v comandos
Maple v comandos
 
01 el lenguaje Python
01 el lenguaje Python01 el lenguaje Python
01 el lenguaje Python
 
Semana 3 Fundamentos de Python(Funciones y Métodos)
Semana 3   Fundamentos de Python(Funciones y Métodos)Semana 3   Fundamentos de Python(Funciones y Métodos)
Semana 3 Fundamentos de Python(Funciones y Métodos)
 
Semana 2 Fundamentos de Python(Entradas, Salidas y Operaciones Aritméticas)
Semana 2   Fundamentos de Python(Entradas, Salidas y Operaciones Aritméticas)Semana 2   Fundamentos de Python(Entradas, Salidas y Operaciones Aritméticas)
Semana 2 Fundamentos de Python(Entradas, Salidas y Operaciones Aritméticas)
 
Curso de Python
Curso de PythonCurso de Python
Curso de Python
 
41 Php. Bucles For
41 Php. Bucles For41 Php. Bucles For
41 Php. Bucles For
 
Apuntadores y direccionamiento
Apuntadores y direccionamientoApuntadores y direccionamiento
Apuntadores y direccionamiento
 
Ejercicios Python Parte 1
Ejercicios Python Parte 1Ejercicios Python Parte 1
Ejercicios Python Parte 1
 
Manual.es
Manual.esManual.es
Manual.es
 
Problemas propuestos clase 0-1
Problemas propuestos  clase 0-1Problemas propuestos  clase 0-1
Problemas propuestos clase 0-1
 
Clase 1 - Python
Clase 1 - PythonClase 1 - Python
Clase 1 - Python
 
Guia tortugarte
Guia tortugarteGuia tortugarte
Guia tortugarte
 
Clase 11- fundamentos de la programacion
Clase 11- fundamentos de la programacionClase 11- fundamentos de la programacion
Clase 11- fundamentos de la programacion
 
Script de Punteros a Funciones
Script de Punteros a FuncionesScript de Punteros a Funciones
Script de Punteros a Funciones
 
Semana 4 Estructuras de datos(Tuplas, Conjuntos y Diccionarios)
Semana 4   Estructuras de datos(Tuplas, Conjuntos y Diccionarios)Semana 4   Estructuras de datos(Tuplas, Conjuntos y Diccionarios)
Semana 4 Estructuras de datos(Tuplas, Conjuntos y Diccionarios)
 
Ejercicio propuesto 2
Ejercicio propuesto 2Ejercicio propuesto 2
Ejercicio propuesto 2
 
Algoritmos - Funciones C++
Algoritmos - Funciones C++ Algoritmos - Funciones C++
Algoritmos - Funciones C++
 
Programación de Videojuegos con Python y Pilas (II)
Programación de Videojuegos con Python y Pilas (II)Programación de Videojuegos con Python y Pilas (II)
Programación de Videojuegos con Python y Pilas (II)
 

Similar a Python03

Taller listasyeasygui
Taller listasyeasyguiTaller listasyeasygui
Taller listasyeasyguiAlbert Page
 
Sesion1_Ciencia_de_Datos-Introduccion a Pithon.pdf
Sesion1_Ciencia_de_Datos-Introduccion a Pithon.pdfSesion1_Ciencia_de_Datos-Introduccion a Pithon.pdf
Sesion1_Ciencia_de_Datos-Introduccion a Pithon.pdfMarxx4
 
Suma de imagenes
Suma de imagenesSuma de imagenes
Suma de imagenesanar26
 
Funciones con vectores c++
Funciones con vectores c++Funciones con vectores c++
Funciones con vectores c++jose machado
 
Unidad6 funciones
Unidad6 funcionesUnidad6 funciones
Unidad6 funcionesmoii Hp
 
9. listas y for-in
9.  listas y for-in9.  listas y for-in
9. listas y for-inFaby Ignacio
 
Argentina Programa Apendix parte 2.pdf
Argentina Programa Apendix parte 2.pdfArgentina Programa Apendix parte 2.pdf
Argentina Programa Apendix parte 2.pdfenzo935311
 
Presentación de matlab electromagnetismo ...
Presentación de matlab electromagnetismo                                     ...Presentación de matlab electromagnetismo                                     ...
Presentación de matlab electromagnetismo ...SimonCaceres4
 
Fonciones de cadenas
Fonciones de cadenasFonciones de cadenas
Fonciones de cadenasmkbenitez
 
Funciones de cadena
Funciones de cadenaFunciones de cadena
Funciones de cadenaAlfredo Joya
 
Fonciones de cadenas
Fonciones de cadenasFonciones de cadenas
Fonciones de cadenasmkbenitez
 
Funciones propias de visual basic
Funciones propias de visual basicFunciones propias de visual basic
Funciones propias de visual basicYesenia Bautista
 
Funciones en lenguage c
Funciones en lenguage cFunciones en lenguage c
Funciones en lenguage cLorena Sanchez
 
Fundamentos de java I
Fundamentos de java IFundamentos de java I
Fundamentos de java IJitle Noriega
 

Similar a Python03 (20)

Taller listasyeasygui
Taller listasyeasyguiTaller listasyeasygui
Taller listasyeasygui
 
Sesion1_Ciencia_de_Datos-Introduccion a Pithon.pdf
Sesion1_Ciencia_de_Datos-Introduccion a Pithon.pdfSesion1_Ciencia_de_Datos-Introduccion a Pithon.pdf
Sesion1_Ciencia_de_Datos-Introduccion a Pithon.pdf
 
Suma de imagenes
Suma de imagenesSuma de imagenes
Suma de imagenes
 
Funciones con vectores c++
Funciones con vectores c++Funciones con vectores c++
Funciones con vectores c++
 
Unidad6 funciones
Unidad6 funcionesUnidad6 funciones
Unidad6 funciones
 
9. listas y for-in
9.  listas y for-in9.  listas y for-in
9. listas y for-in
 
dqwrwer
dqwrwerdqwrwer
dqwrwer
 
Argentina Programa Apendix parte 2.pdf
Argentina Programa Apendix parte 2.pdfArgentina Programa Apendix parte 2.pdf
Argentina Programa Apendix parte 2.pdf
 
Funciones
FuncionesFunciones
Funciones
 
Presentación de matlab electromagnetismo ...
Presentación de matlab electromagnetismo                                     ...Presentación de matlab electromagnetismo                                     ...
Presentación de matlab electromagnetismo ...
 
Clase 6
Clase 6Clase 6
Clase 6
 
Arrays en VB 6.0
Arrays en VB 6.0Arrays en VB 6.0
Arrays en VB 6.0
 
Fonciones de cadenas
Fonciones de cadenasFonciones de cadenas
Fonciones de cadenas
 
Funciones de cadena
Funciones de cadenaFunciones de cadena
Funciones de cadena
 
Fonciones de cadenas
Fonciones de cadenasFonciones de cadenas
Fonciones de cadenas
 
Funciones
FuncionesFunciones
Funciones
 
Funciones
FuncionesFunciones
Funciones
 
Funciones propias de visual basic
Funciones propias de visual basicFunciones propias de visual basic
Funciones propias de visual basic
 
Funciones en lenguage c
Funciones en lenguage cFunciones en lenguage c
Funciones en lenguage c
 
Fundamentos de java I
Fundamentos de java IFundamentos de java I
Fundamentos de java I
 

Más de Victor Pando

Análisis del Sector Metalmecánica
Análisis del Sector MetalmecánicaAnálisis del Sector Metalmecánica
Análisis del Sector MetalmecánicaVictor Pando
 
Video y Multimedia
Video y MultimediaVideo y Multimedia
Video y MultimediaVictor Pando
 
Panorama General de Open Office 3.0
Panorama General de Open Office 3.0Panorama General de Open Office 3.0
Panorama General de Open Office 3.0Victor Pando
 
Curso Básico de Windows XP
Curso Básico de Windows XPCurso Básico de Windows XP
Curso Básico de Windows XPVictor Pando
 
Tecnología Bluetooth
Tecnología BluetoothTecnología Bluetooth
Tecnología BluetoothVictor Pando
 
Redes WiFi 821.11 a vs. 802.11b
Redes WiFi 821.11 a vs. 802.11bRedes WiFi 821.11 a vs. 802.11b
Redes WiFi 821.11 a vs. 802.11bVictor Pando
 
Administración de Sistemas de Información
Administración de Sistemas de InformaciónAdministración de Sistemas de Información
Administración de Sistemas de InformaciónVictor Pando
 
Introducción al WAP
Introducción al WAPIntroducción al WAP
Introducción al WAPVictor Pando
 
Estado del Arte de Hardware y Software para Ingeniería Civil
Estado del Arte de Hardware y Software para Ingeniería CivilEstado del Arte de Hardware y Software para Ingeniería Civil
Estado del Arte de Hardware y Software para Ingeniería CivilVictor Pando
 

Más de Victor Pando (11)

Análisis del Sector Metalmecánica
Análisis del Sector MetalmecánicaAnálisis del Sector Metalmecánica
Análisis del Sector Metalmecánica
 
Linux02
Linux02Linux02
Linux02
 
Python06
Python06Python06
Python06
 
Video y Multimedia
Video y MultimediaVideo y Multimedia
Video y Multimedia
 
Panorama General de Open Office 3.0
Panorama General de Open Office 3.0Panorama General de Open Office 3.0
Panorama General de Open Office 3.0
 
Curso Básico de Windows XP
Curso Básico de Windows XPCurso Básico de Windows XP
Curso Básico de Windows XP
 
Tecnología Bluetooth
Tecnología BluetoothTecnología Bluetooth
Tecnología Bluetooth
 
Redes WiFi 821.11 a vs. 802.11b
Redes WiFi 821.11 a vs. 802.11bRedes WiFi 821.11 a vs. 802.11b
Redes WiFi 821.11 a vs. 802.11b
 
Administración de Sistemas de Información
Administración de Sistemas de InformaciónAdministración de Sistemas de Información
Administración de Sistemas de Información
 
Introducción al WAP
Introducción al WAPIntroducción al WAP
Introducción al WAP
 
Estado del Arte de Hardware y Software para Ingeniería Civil
Estado del Arte de Hardware y Software para Ingeniería CivilEstado del Arte de Hardware y Software para Ingeniería Civil
Estado del Arte de Hardware y Software para Ingeniería Civil
 

Último

Movimientos Precursores de La Independencia en Venezuela
Movimientos Precursores de La Independencia en VenezuelaMovimientos Precursores de La Independencia en Venezuela
Movimientos Precursores de La Independencia en Venezuelacocuyelquemao
 
Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.José Luis Palma
 
30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdfgimenanahuel
 
Informatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosInformatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosCesarFernandez937857
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arteRaquel Martín Contreras
 
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARONARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFAROJosé Luis Palma
 
codigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karinacodigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karinavergarakarina022
 
Herramientas de Inteligencia Artificial.pdf
Herramientas de Inteligencia Artificial.pdfHerramientas de Inteligencia Artificial.pdf
Herramientas de Inteligencia Artificial.pdfMARIAPAULAMAHECHAMOR
 
Factores ecosistemas: interacciones, energia y dinamica
Factores ecosistemas: interacciones, energia y dinamicaFactores ecosistemas: interacciones, energia y dinamica
Factores ecosistemas: interacciones, energia y dinamicaFlor Idalia Espinoza Ortega
 
RETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxRETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxAna Fernandez
 
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxSINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxlclcarmen
 
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.pptDE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.pptELENA GALLARDO PAÚLS
 
texto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticostexto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticosisabeltrejoros
 
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSTEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSjlorentemartos
 
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIACarlos Campaña Montenegro
 
Manual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfManual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfMaryRotonda1
 
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxPPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxOscarEduardoSanchezC
 

Último (20)

Movimientos Precursores de La Independencia en Venezuela
Movimientos Precursores de La Independencia en VenezuelaMovimientos Precursores de La Independencia en Venezuela
Movimientos Precursores de La Independencia en Venezuela
 
Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.
 
Repaso Pruebas CRECE PR 2024. Ciencia General
Repaso Pruebas CRECE PR 2024. Ciencia GeneralRepaso Pruebas CRECE PR 2024. Ciencia General
Repaso Pruebas CRECE PR 2024. Ciencia General
 
30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf
 
Informatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosInformatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos Básicos
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arte
 
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARONARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
 
codigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karinacodigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karina
 
Unidad 4 | Teorías de las Comunicación | MCDI
Unidad 4 | Teorías de las Comunicación | MCDIUnidad 4 | Teorías de las Comunicación | MCDI
Unidad 4 | Teorías de las Comunicación | MCDI
 
Herramientas de Inteligencia Artificial.pdf
Herramientas de Inteligencia Artificial.pdfHerramientas de Inteligencia Artificial.pdf
Herramientas de Inteligencia Artificial.pdf
 
Factores ecosistemas: interacciones, energia y dinamica
Factores ecosistemas: interacciones, energia y dinamicaFactores ecosistemas: interacciones, energia y dinamica
Factores ecosistemas: interacciones, energia y dinamica
 
RETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxRETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docx
 
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxSINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
 
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.pptDE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
 
La Trampa De La Felicidad. Russ-Harris.pdf
La Trampa De La Felicidad. Russ-Harris.pdfLa Trampa De La Felicidad. Russ-Harris.pdf
La Trampa De La Felicidad. Russ-Harris.pdf
 
texto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticostexto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticos
 
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSTEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
 
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
 
Manual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfManual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdf
 
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxPPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
 

Python03

  • 1. PYTHON Lección No. 3 M.Sc. Victor Pando Beltrán [email_address] http://www.civil-uancv.pe/aulavirtual
  • 2.
  • 3.
  • 4. Funciones (1/4) La estructura fundamental de programación de los lenguajes estructurados son las funciones. Una función es un conjunto de instrucciones que se la invoca mediante un nombre y que luego de ejecutado el algoritmo puede retornar un valor. Un programa estructurado no es más que un conjunto de funciones que en conjunto resuelven un problema complejo. Veamos la sintaxis en Python para definir y llamar a una función: def presentacion(): print 'Primer mensaje.' print 'Segundo mensaje.' def fin(): print 'Ultimo mensaje.' presentacion() fin()
  • 5. Funciones (2/4) Para definir una función utilizamos la palabra clave 'def' seguida por el nombre de la función, luego si no tiene parámetros como este caso debe ir paréntesis abiertos y cerrados y dos puntos. Seguidamente las instrucciones de la función se indentan a derecha. def presentacion(): print 'Primer mensaje.' print 'Segundo mensaje.' Una función se ejecuta cuando se la llama por su nombre: presentacion() Es importante notar que primero debemos declarar la función y luego llamarla.
  • 6. Funciones (3/4) Una función puede tener parámetros de entrada, por ejemplo si queremos una función que reciba dos enteros y luego nos imprima el mayor, el algoritmo es el siguiente: def imprimirmayor(valor1,valor2): if valor1>valor2: print valor1 else: print valor2 imprimirmayor(4,5) x1=20 x2=30 imprimirmayor(x1,x2) Los parámetros de la función se indican en la cabecera de la función separados por comas. Cuando llamamos a la función estamos obligados a enviarle datos a los dos parámetros.
  • 7. Funciones (4/4) Podemos enviarle directamente los valores: imprimirmayor(4,5) O podemos enviarle variables previamente inicializadas: x1=20 x2=30 imprimirmayor(x1,x2) Como podemos notar con este ejemplo una función puede ser llamada más de una vez (en este caso la llamamos dos veces)
  • 8. Problema resuelto Confeccionar una función que reciba un entero y luego imprima la tabla de multiplicar de dicho valor (por ejemplo si recibe un 3 luego debe mostrar del 3 hasta el 30 de 3 en 3) def mostrartabla(num): inicio=num fin=num*10 while inicio<=fin: print inicio print '-' inicio=inicio+num mostrartabla(3)
  • 9. Problema propuesto Desarrollar una función que reciba dos enteros y nos muestre todos los valores comprendidos entre ellos (el segundo parámetro siempre debe ser mayor al primero) def rangovalores(v1,v2): inicio=v1 while inicio<=v2: print inicio inicio=inicio+1 rangovalores(2,20)
  • 10. Funciones con retorno de dato (1/2) Hay muchas situaciones donde queremos que la función luego de ejecutarse retorne un valor y se almacene en una variable desde donde la llamamos. Por ejemplo si necesitamos una función que reciba tres enteros y nos retorne el mayor la sintaxis será la siguiente: def retornarmayor(x1,x2,x3): if x1<x2 and x1<x3: return x1 elif x2<x3: return x2 else: return x3 may=retornarmayor(4,5,3) print may Como podemos observar la instrucción return indica el valor devuelto por la función.
  • 11. Funciones con retorno de dato (2/2) El valor retornado se almacena en una variable: may=retornarmayor(4,5,3) Podemos inclusive mostrar directamente el valor retornado por la función: print retornarmayor(40,5,3) O utilizarlo en una condición: if retornarmayor(40,5,3)<20: print 'El valor devuelto es mayor a 20'
  • 12. Problema resuelto Confeccionar una función que reciba tres enteros y nos retorne la suma de dichos valores. def sumar(x1,x2,x3): su=x1+x2+x3 return su total=sumar(10,30,42) print total
  • 13. Problema Propuesto Desarrollar una función que reciba tres enteros y nos retorne la suma de los dos más grandes. def sumarmayores(x1,x2,x3): if x1>x2 and x1>x3: if x2>x3: return x1+x2 else: return x1+x3 elif x2>x3: if x3>x1: return x2+x3 else: return x2+x1 else: if x2>x1: return x3+x2 else: return x3+x1 print sumarmayores(100,200,30)
  • 14. Estructura de datos tipo tupla (1/4) Hasta ahora hemos empleado variables que permiten almacenar un único valor. En Python existen varias estructuras de datos que permiten almacenar un conjunto de datos. La primera que presentaremos es la tupla: Una tupla es una colección de datos no necesariamente del mismo tipo que se los accede por medio de subíndices. Definición de una tupla: tupla1=('juan',18,1.92) ' Hemos definido una tupla de tres elementos. El primer elemento es de tipo cadena de caracteres, el segundo un entero y finalmente un valor flotante. Cada elemento de una tupla se los separa por una coma.
  • 15. Estructura de datos tipo tupla (2/4) Para acceder a los elementos lo hacemos por medio del nombre de la tupla y un subíndice numérico: print tupla1[0] Los elementos de la tupla comienzan a numerarse a partir de cero y utilizamos los corchetes para hacer referencia al subíndice. Si queremos en algún momento saber la cantidad de elementos de una tupla debemos llamar la función len: print len(tupla1) #imprime un 3
  • 16. Estructura de datos tipo tupla (3/4) con dicha función podemos disponer una estructura repetitiva para imprimir todas las componentes de la tupla con el siguiente algoritmo: : tupla1=('juan',18,1.92) indice=0 while indice<len(tupla1): print tupla1[indice] indice=indice+1 Veremos en el próximo concepto que hay una estructura repetitiva que nos facilita recorrer los elementos de una tupla. Una vez definida la tupla no se pueden modificar los valores almacenados. La función print puede recibir como parámetro una tupla y se encarga de mostrarla en forma completa: print tupla1
  • 17. Estructura de datos tipo tupla (4/4) De todos modos cuando tenemos que acceder a algún elemento de la tupla debemos hacerlo mediante un subíndice entre corchetes. La característica fundamental de una tupla es que una vez creada no podemos modificar sus elementos, ni tampoco agregar o eliminar.
  • 18. Problema resuelto Definir dos tuplas que almacenen en una los nombres de los meses y en otra la cantidad de días que tiene cada mes del año. Luego mostrar el contenido almacenado en las mismas. meses=('enero','febrero','marzo','abril','mayo','junio','julio','agosto', 'septiembre','octubre','noviembre','diciembre') cantidaddias=(31,28,31,30,31,30,31,31,30,31,30,31) indice=0 while indice<len(meses): print meses[indice] print ':' print cantidaddias[indice] print '<br>' indice=indice+1
  • 19. Problema Propuesto Definir una tupla que almacene 5 enteros. Implementar un algoritmo que imprima la suma de todos los elementos. tupla1=(6,33,56,3,45) suma=0 indice=0 while indice<len(tupla1): suma=suma+tupla1[indice] indice=indice+1 print 'El contenido de la tupla es:‘ print tupla1 print 'La suma es:‘ print suma
  • 20. Estructura repetitiva for in para recorrer una tupla Para recorrer una tupla es muy común utilizar la estructura repetitiva for. Veamos con un ejemplo la sintaxis de esta estructura repetitiva: tupla1=('juan',23,1.92) for elemento in tupla1: print elemento Como podemos ver la instrucción for requiere una variable (en este ejemplo llamada elemento), luego la palabra clave in y por último la tupla. El bloque del for se ejecuta tantas veces como elementos tenga la tupla, y en cada vuelta del for la variable elemento almacena un valor de la tupla1. Esta estructura repetitiva se adapta mucho mejor que el while para recorrer este tipo de estructuras de datos.
  • 21. Problema resuelto Definir una tupla con 5 valores enteros. Imprimir los valores mayores o iguales a 18. tupla1=(45,34,2,56,1) for elemento in tupla1: if elemento>=18: print elemento
  • 22. Problema Propuesto Definir una tupla con 10 edades de personas. Imprimir la cantidad de personas con edades superiores a 20. tupla1=(45,78,3,56,3,45,34,2,56,1) cantidad=0 for elemento in tupla1: if elemento>20: cantidad=cantidad+1 print 'Cantidad de personas con edades superiores a 20:' print cantidad
  • 23. Porciones de tuplas (1/2) El lenguaje Python nos permite rescatar una &quot;porción&quot; de una tupla, es decir un trozo de la misma. Si tenemos la siguiente tupla: tupla1=(1,7,20,40,51,3) tupla2=tupla1[0:4] print tupla2 El resultado es una tupla con cuatro valores: (1,7,20,40) Es decir indicamos como subíndice un rango de valores, en este caso desde la posición 0 hasta la posición 4 sin incluirla.
  • 24. Porciones de tuplas (2/2) Podemos no indicar alguno de los dos rangos: tupla1=(1,7,20,40,51,3) tupla2=tupla1[3:] print tupla2 El resultado es una tupla con tres valores, desde la posición 3 hasta el final de la tupla: (40, 51, 3) En caso de no indicar el primer rango: tupla1=(1,7,20,40,51,3) tupla2=tupla1[:2] print tupla2 El resultado es una tupla con dos valores, desde el principio de la tupla hasta la posición 2 sin incluirla: (1, 7)
  • 25. Problema resuelto Definir una tupla con los nombres de los meses. Generar dos tuplas que almacenen los primeros 6 meses la primera y los siguientes 6 meses la segunda. meses=('enero','febrero','marzo','abril','mayo','junio','julio','agosto', 'septiembre','octubre','noviembre','diciembre') tupla1=meses[:6] tupla2=meses[6:] print tupla1 print tupla2
  • 26. Problema Propuesto Almacenar en una tupla 5 nombres. Luego generar un valor aleatorio entre 2 y 4. Copiar a una tupla el nombre de la posición indicada por el valor aleatorio y los nombres que se encuentran en la posición anterior y posterior. import random nombre=('juan','ana','luis','carlos','roman') ale=random.randint(1,3) tresnombres=nombre[ale-1:ale+2] print tresnombres
  • 27. Estructura de datos tipo cadena de caracteres (string) (1/5) Una cadena de caracteres permite almacenar un conjunto de caracteres. Su funcionamiento es similar a una tupla. Para inicializar un string utilizamos el operador de asignación. nombre='Juan Pablo' Podemos utilizar las comillas simples o dobles para su inicialización: mail='jose@gmail.com' O mail=&quot;jose@gmail.com&quot;
  • 28. Estructura de datos tipo cadena de caracteres (string) (2/5) Para conocer el largo de un string podemos utilizar la función len: print len(mail) Para acceder a un caracter particular del string lo hacemos indicando un subíndice entre corchetes: print mail[0] #Imprimimos el primer caracter El lenguaje Python nos permite rescatar una &quot;porción&quot; de un string con la misma sintaxis que trabajamos las tuplas: nombre='Jose Maria' print nombre[1:4] #ose print nombre[:4] #Jose print nombre[5:] #Maria
  • 29. Estructura de datos tipo cadena de caracteres (string) (3/5) Los string son inmutables, es decir que no podemos modificar su contenido luego de ser inicializados: titulo='Administracion' titulo[0]='X' # Esto produce un error Esto no significa que no podemos utilizar la variable para que referencie a otro string: nombre='Jose' print nombre nombre='Ana' print nombre Para concatenar string Python permite utilizar el operador +. Si tenemos tres string y queremos almacenar sus contenidos en un cuarto string podemos codificarlo de la siguiente manera: cadena1='uno' cadena2='dos' cadena3='tres' total=cadena1+cadena2+cadena3 print total #unodostres
  • 30. Estructura de datos tipo cadena de caracteres (string) (4/5) También Python define el operador * para los string. El resultado de multiplicar un string por un entero es otro string que repite el string original tantas veces como indica el número. #si queremos un string con 80 caracteres de subrayado, #la forma más sencilla es utilizar la siguiente expresión: separador='_'*80 print separador Los operadores relacionales definidos para los string son: Mayor >= Mayor o igual < Menor <= Menor o igual == Igual != Distinto
  • 31. Estructura de datos tipo cadena de caracteres (string) (5/5) Si queremos saber si un string es mayor alfabéticamente que otro utilizamos el operador > nombre1='CARLOS' nombre2='ANABEL' if nombre1>nombre2: print nombre1+' es mayor alfabéticamente que '+nombre2 si queremos saber si dos variables tienes en mismo contenido: nombre1='CARLOS' nombre2='CARLOS' if nombre1==nombre2: print 'Las dos variables tienen el mismo contenido:'+nombre1
  • 32. Problema resuelto (1/2) Elaborar una función que reciba un string y retorne la cantidad de vocales que tiene. def cantidadvocales(cadena): cant=0 for letra in cadena: if letra=='a': cant=cant+1 if letra=='e': cant=cant+1 if letra=='i': cant=cant+1 if letra=='o': cant=cant+1 if letra=='u': cant=cant+1 if letra=='A': cant=cant+1
  • 33. Problema resuelto (2/2) if letra=='E': cant=cant+1 if letra=='I': cant=cant+1 if letra=='O': cant=cant+1 if letra=='U': cant=cant+1 return cant print 'Cantidad de vocales en la palabra Hola:' print cantidadvocales('Hola') print 'Cantidad de vocales en la palabra Computadora:' print cantidadvocales('Computadora')
  • 34. Problema Propuesto (1/2) Elaborar las siguientes funciones: - Una función que reciba un string y nos retorne el primer caracter. - Una función que reciba un apellido y un nombre, y nos retorne un único string con el apellido y nombre concatenados y separados por una coma. - Una función que reciba dos string y nos retorne el que tiene menos caracteres. def primercaracter(cadena): return cadena[0] def concatenar(apellido,nombre): return apellido+','+nombre def menor(cadena1,cadena2): if len(cadena1)<len(cadena2): return cadena1 else: return cadena2
  • 35. Problema Propuesto (2/2) cad='Hola Mundo' print 'Primer caracter de '+cad+' es '+primercaracter(cad) nom='juan‘ ape='rodriguez' print 'Apellido y nombre concatenados:'+concatenar(ape,nom) cad1='Hola' cad2='Fin' print 'De: '+cad1+' y '+cad2+' tiene menos caracteres '+menor(cad1,cad2)
  • 36.
  • 37.