Funciones y Modulos en Python!!!


En esta oportunidad les voy a hablar sobre la instanciacion de las funciones en python, por ejemplo recuerdo que teniamos el siguiente codigo:


n = int(input( "Introduce el valor de N: "))
m = int(input( "Introduce el valor de M: "))
if (n or m) < 1:
     print "Solo Numero positivos mayores que 0"
else:
     for n in range(n,m):
          while n != 1:
               print n,
               if n%2 == 0:
                    n = n/2
               else:
                    n = n*3+1
          print n

Y bueno esto no es mas que un script, por lo que si queremos reutilizar el código debemos crear una función por lo que nos quedaría de la siguiente manera:


def numnum(n,m):
   if (n or m) < 1:
      print "Solo Numero positivos mayores que 0"
   else:
      for n in range(n,m):
         while n != 1:
            print n,
               if n%2 == 0:
                  n = n/2
               else:
                  n = n*3+1
         print n
numnum(20, 25) # Aqui llamamos a la funcion que creamos

Donde n y m son números que podemos cambiar, si lanzamos el código sin la ultima linea no haría nada y saltaría la linea simplemente por lo que al escribir en el promp la ultima linea veríamos el resultado esperado 😀

En realidad el código es muy sencillo de entender ahora vemos un ejemplo del libro “Desarrollo de aplicaciones con Python Pygtk y Glade” Se los recomiendo “Es una tesis”….

# Modulo de los numeros de fibonacci
def fib(n):
# Escribe la serie de Fibonacci hasta n
   a, b = 0, 1
   while b < n:
      print b,
      a, b = b, a+b
def fib2(n): # Regresa la serie de fibonacci hasta n
   result = []
   a, b = 0, 1
   while b < n:
      result.append(b)
      a, b = b, a+b
   return result

Las 2 funciones mas o menos hacen lo mismo, la única diferencia es que append se refiere a un arreglo recuerden la calculadora de hace tiempo que hicimos por lo que agrega(b) al vector cada ves hasta terminar, ejecuten el código y luego hagan lo siguiente, yo uso Wing IDE por que cuando comencé en http://programarcadegames.com/ ese era el IDE que usaban:

Asi que simplemente corro el script y luego voy al promp de este IDE y escribo lo siguiente:


import fibo

esto para importar el modulo bien podríamos importar solo una de las 2 funciones con el nombre que se nos ocurra en otro script o modulo que hagamos a futuro


fibo.fib(1000)

# Resultado
# 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987


fibo.fib2(1000)

# Resultado
# [1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987]


fibo.fib2(1000)

# Resultado
# [1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987]

Ahora un extra para cuando veamos la siguiente entrada:


fibo.__name__
# Resultado
# 'fibo'

Para ampliar mas esto podrían leer el libro antes mencionado en la pag75 “Desarrollo de aplicaciones con Python Pygtk y Glade”

 

 

 

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s