0% encontró este documento útil (0 votos)
509 vistas12 páginas

Python para Principiantes, Edición 2020: September 2020

Este libro trata sobre Python para principiantes. Explica conceptos básicos como funciones, parámetros, y llamadas de funciones. También cubre temas avanzados como parámetros arbitrarios y desempaquetado de parámetros.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
509 vistas12 páginas

Python para Principiantes, Edición 2020: September 2020

Este libro trata sobre Python para principiantes. Explica conceptos básicos como funciones, parámetros, y llamadas de funciones. También cubre temas avanzados como parámetros arbitrarios y desempaquetado de parámetros.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 12

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/344333481

Python para principiantes, Edición 2020

Book · September 2020

CITATIONS

1 author:

Eugenia Bahit
Hackers & Developers Press
21 PUBLICATIONS   0 CITATIONS   

SEE PROFILE

Some of the authors of this publication are also working on these related projects:

Python for beginners View project

Publicación libro Onna Bugeisha View project

All content following this page was uploaded by Eugenia Bahit on 21 September 2020.

The user has requested enhancement of the downloaded file.


PYTHON PARA
PRINCIPIANTES

Edición 2020

EUGENIA BAHIT
Informática Teórica
The Oxford Research Centre

London, United Kingdom


2020
PYTHON PARA PRINCIPIANTES EDICIÓN 2020
© 2020 EUGENIA BAHIT & OXFORD RESEARCH CENTRE LTD

Excepto donde se indique lo contrario, el contenido de este libro está


distribuido bajo una licencia Creative Commons Atribución No
Comercial Sin Derivadas 4.0 Internacional (CC BY-NC-ND 4.0). La
copia y distribución sin fines de lucro se encuentran permitidas. Texto
completo de la licencia: https://creativecommons.org/licenses/by-nc-
nd/4.0/deed.es

ISBN: 978-1-8381901-0-1
e-ISBN: 978-1-8381901-1-8

Publicado por Oxford RC Publisher


71-75 Shelton Street, Covent Garden, London. United Kingdom, WC2H 9JQ
www.oxfordresearchcentre.co.uk

Editora: Eugenia Bahit

Diseño interior: Amanda Kraf


Diseño de portada: Julia Davies

Impreso en Reino Unido y Estados Unidos por Lulu Press, Inc.


A quienes construyen sus sueños con
pasión y se esfuerzan para alcanzar
sus metas.
Funciones 27

Funciones definidas por el usuario


En Python la definición de funciones se realiza mediante la
instrucción def más un nombre de función descriptivo -para el
cuál, aplican las mismas reglas que para el nombre de las variables-
seguido de paréntesis de apertura y cierre.

Como toda estructura de control en Python, la definición de la


función finaliza con dos puntos (:) y el algoritmo que la compone,
irá identado con 4 espacios en blanco:
def mi_funcion():
# aquí el algoritmo identado

Una función no es ejecutada hasta tanto no sea invocada. Para


invocar una función, simplemente se la llama por su nombre:
def mi_funcion():
print("Hola Mundo")

funcion()

Las funciones pueden retornar datos:


def funcion():
return "Hola Mundo"

Y el valor de retorno de una función puede almacenarse en una


variable:
frase = funcion()

DISPONIBLE EN PDF (SIN DRM)


Imprimirse:
Y EN PAPEL. ENVÍO GRATIS.
print(funcion())

Consigue la versión completa en


O ignorarse:

www.oxfordresearchcentre.co.uk
28 Eugenia Bahit: Python para Principiantes. The Oxford Research Centre, 2020.

funcion()

Sobre los parámetros


Un parámetro es un valor que la función espera recibir cuando sea
llamada (invocada). Una función puede esperar uno o más
parámetros (que son definidos entre los paréntesis y separados
por una coma) o ninguno.
def mi_funcion(param1, param2):
pass

La instrucción pass se utiliza para completar una estructura de


control que no realiza ninguna acción.

Los parámetros que una función espera, serán utilizados por ésta,
dentro de su algoritmo, a modo de variables de ámbito local. Es
decir, que los parámetros serán variables locales que solo son
accesibles dentro de la función:
def calcular_neto(bruto, alicuota):
iva = bruto * float(alicuota) / 100
neto = bruto + iva
return neto

Si se quisiera acceder a esas variables locales fuera del ámbito de


la función, se obtendría un error:
def calcular_neto(bruto, alicuota):
iva = bruto * float(alicuota) / 100
neto = bruto + iva
return neto

DISPONIBLE
# Retornará EN
print(bruto) PDF (SIN DRM)
el error:

Y EN PAPEL. ENVÍO GRATIS.


# NameError: name 'bruto' is not defined

Consigue la versión completa en


www.oxfordresearchcentre.co.uk
Funciones 29

Al llamar a una función, se le deben pasar sus argumentos en


el mismo orden en el que los espera. Para evitar pasarlos en el
mismo orden, pueden utilizarse claves como argumentos
(definidos más abajo).

Parámetros por omisión


Es posible asignar valores por defecto a los parámetros de las
funciones. Esto significa, que la función podrá ser llamada con
menos argumentos de los que ha definido:
def calcular_neto(bruto, alicuota=21):
iva = bruto * float(alicuota) / 100
neto = bruto + iva
return neto

calcular_neto(100) # Retorna 121.0


calcular_neto(100, 10.5) # Retorna 110.5

PEP 8: Funciones

A la definición de una función la deben anteceder dos líneas en


blanco.

Al asignar parámetros por omisión, no debe dejarse espacios


en blanco ni antes ni después del signo =.

Los parámetros por omisión deben ser definidos a continuación de


los parámetros obligatorios.

Claves como argumentos


DISPONIBLE EN PDF (SIN DRM)
Las claves como argumentos (keword arguments) son una
Y EN PAPEL. ENVÍO GRATIS.
característica de Python que no todos los lenguajes poseen.
Python permite llamar a una función pasándole los argumentos

Consigue la versión completa en


esperados como pares de claves=valor:

www.oxfordresearchcentre.co.uk
30 Eugenia Bahit: Python para Principiantes. The Oxford Research Centre, 2020.

def funcion(obligatorio1, opcional='valor por defecto', opcional_dos=15):


pass

funcion('valor obligatorio', opcional_dos=43)

Parámetros arbitrarios
Es posible que una función espere recibir un número arbitrario
-desconocido- de argumentos. Estos argumentos, llegarán a la
función en forma de tupla.

Para definir argumentos arbitrarios en una función, se antecede un


asterisco (*) al nombre del parámetro :
def funcion(obligatorio, *arbitrarios):
pass

funcion('fijo', 1, 2, 3, 4, 5)
funcion('fijo', 1, 2)
funcion('fijo', 1, 2, 3, 4, 5, 6, 7)
funcion('fijo')

Cuando una función espera recibir parámetros obligatorios y


arbitrarios, los arbitrarios siempre deben suceder a los
obligatorios.

Es posible también, obtener parámetros arbitrarios como pares de


clave=valor. En estos casos, al nombre del parámetro deben
precederlo dos asteriscos (**):
def funcion(obligatorio, **arbitrarios):
pass

DISPONIBLE EN PDF (SIN DRM)


funcion('fijo', a=1, b=2, c=3)
Y EN PAPEL. ENVÍO GRATIS.

Consigue la versión completa en


www.oxfordresearchcentre.co.uk
Funciones 31

El recorrido de los parámetros arbitrarios es como el recorrido


de cualquier tupla (para parámetros arbitrarios sin clave) o de
cualquier diccionario (para los parámetros arbitrarios con clave):
def funcion(*arbitrarios):
for argumento in arbitrarios:
pass

def funcion(**arbitrarios):
for argumento in arbitrarios:
valor = arbitrarios[argumento]

Desempaquetado de parámetros
Al invocar a una función se le pueden pasar los parámetros que
espera dentro de una lista o de un diccionario (donde los nombres
de las claves equivalen al nombre de los argumentos). A este
procedimiento se lo conoce como desempaquetado de
parámetros:
def funcion(uno, dos, tres):
pass

# DESEMPAQUETADO DE LISTAS
parametros = [1, 2, 3]
calcular(*parametros)

# DESEMPAQUETADO DE DICCIONARIOS
parametros = dict(uno=1, dos=2, tres=3)
calcular(**parametros)

parametros = {'uno': 1, 'dos': 2, 'tres': 3}


calcular(**parametros)

DISPONIBLE EN PDF (SIN DRM)


Llamadas recursivas y de retorno
Y EN PAPEL. ENVÍO GRATIS.
Una función puede llamar a otra función que retorne un valor.
Esto se conoce como llamada de retorno:
Consigue la versión completa en
www.oxfordresearchcentre.co.uk
32 Eugenia Bahit: Python para Principiantes. The Oxford Research Centre, 2020.

def retornar(algo):
return str(algo)

def llamar():
algo = retornar()

La llamada interna a otra función puede almacenarse, retornarse o


ignorarse.
def almacenar():
algo = retornar()

def volver_a_retornar():
return retornar()

def ignorar():
retornar()

Cuando la llama que se hace es a la misma función que se llama,


se conoce como llamada recursiva.
def get_nombre():
nombre = raw_input("Nombre: ")
if not nombre:
get_nombre()

Sobre la finalidad de las funciones


Una función puede tener cualquier tipo de algoritmo y cualquier
cantidad de instrucciones. Sin embargo, una buena práctica
indica que la finalidad de una función, debe ser realizar una

DISPONIBLE EN PDF (SIN DRM)


única acción.

Y EN PAPEL. ENVÍO GRATIS.

Consigue la versión completa en


www.oxfordresearchcentre.co.uk
View publication stats

También podría gustarte