PYTHON - FUNCIONES PROPIAS

Puedes ver todo el contenido de este vídeo GRATIS, simplemente registrandote

En esta sesión detallamos cómo definir nuestras propias funciones con Python, cómo invocarlas y utilizar parámetros según su posición, nombre e incluso cómo definir una función con un número variable de argumentos.

Cargando video...

NOTA: ¡Este curso se encuentra disponible, completo y 100% gratis para ti!. Solo es necesario registrarse para poder disfrutarlo sin coste.

Descripción del Vídeo

En Python usamos la cláusula def para definir nuestras propias funciones. El nombre de una función, al igual que las variables, debe cumplir las reglas del lenguaje sobre identificadores:
El primer carácter debe ser una letra o un subrayado. El resto pueden ser letras, dígitos o subrayado.
No se pueden utilizar palabras reservadas del lenguaje como nombres de variables.

Luego del nombre de la función, entre paréntesis (obligatorios), puede aparecer una lista (opcional) de parámetros aceptados por la función, seguida de dos puntos (:) y un bloque indentado con el cuerpo de la función.

def funcion(param1, param2, ...):
    bloque-funcion

Si una función en Python no retorna explícitamente un valor, obtendremos de ésta el valor especial None.

Al invocar una función en Python, podemos hacerlo pasando los parámetros de acuerdo con el orden definido, o utilizar explícitamente los nombres de parámetros.
Ilustrar definición de funciones con programa de ejemplo.
Código disponible en:
https://github.com/networkfaculty/Fundamentos-Python/blob/master/08-funciones-propias.py

#!/usr/bin/env python

"""
Ejemplos de declaración e invocación de funciones propias
"""

def mostrar_suma(a,b):
    """Sumar dos números, mostrando la operación realizada"""
    print(a,'+',b,'=',a+b)

resultado = mostrar_suma(2,3)
print(resultado)

def mostrar_operacion(a,b,operador='+'):
    """Realizar una operación sobre dos números, mostrando la operación realizada"""
    print(a,operador,b,'=',eval('a'+operador+'b') )

mostrar_operacion(2,3)
mostrar_operacion(5,2,'*')
mostrar_operacion(5,2,operador='*')
mostrar_operacion(operador='/', b=5, a=2)


def sumar(a=0,*valores):
    """Sumar una cantidad variable de números, mostrando la operación realizada"""
    total = a
    print(a,end=' ')
    for valor in valores:
        print('+',valor,end=' ')
        total += valor
    print('=',total)
    return total

resultado = sumar(2,3)
print(resultado)
sumar(2,3,4)
sumar(1,2,3,4,5,6)
sumar()

import math
from time import time

def factorial(x):
    """Clásico ejemplo de función recursiva, el cálculo de factorial"""
    if x == 0:
        return 1
    else:
        return x * factorial(x - 1)

inicio = time()
print('El factorial de 8 es', factorial(8), 'Tiempo:', time()-inicio)
inicio = time()
print('(math) El factorial de 8 es', math.factorial(8), 'Tiempo:', time()-inicio)

Rating

Global

Ver video en playlist

comments powered by Disqus

Headshot of Juan Paredes

Juan Paredes

Ingeniero de Sistemas con amplia experiencia, especializado en el desarrollo y arquitectura de software.