Documentos de Académico
Documentos de Profesional
Documentos de Cultura
1Python
Universidad de Pamplona.
Facultad de ingenierías y arquitectura.
Programación l
Abstract
para realizar cualquier tipo de programa, desde aplicaciones Windows a servidores de red o
incluso, páginas web. El creador del lenguaje es un europeo llamado Guido Van Rossum. El
desarrollo de Python duró varios años, durante los que trabajó en diversas compañías de Estados
Una de las características de python es que da uso de un lenguaje interpretado, lo que significa que
no se necesita compilar el código fuente para poder ejecutarlo, lo que ofrece ventajas como la
En el presente trabajo se dan a conocer diferentes aspectos de python, para un correcto desarrollo a
la hora de trabajar el mismo, en un ámbito muy amplio, desde cosas básicas hasta la creación de
Tabla de contenidos
Python.................................................................................................................................................6
1. ¿Qué es?..................................................................................................................................6
2. Historia de Python...................................................................................................................6
3. Características de Python 3.1 Propósito general....................................................................7
4. Empezar a utilizar Python.......................................................................................................8
......................................................................................................................................................13
11. Conversión.........................................................................................................................13
13.1 Operaciones comunes..........................................................................................................18
Operadores de cadenas de caracteres: adición y multiplicación..................................................20
Métodos para cadenas de caracteres: buscar, cambiar.................................................................21
15.2 Operador Resta..................................................................................................................25
15.3 Operador Negación............................................................................................................25
15.4 Operador Multiplicación...................................................................................................26
15.5 Operador Exponente..........................................................................................................26
15.6 Operador división...............................................................................................................26
15.8 Operador división entera...................................................................................................26
15.9 Operador Modulo...............................................................................................................27
15.10 Orden de precedencia......................................................................................................27
16.1 Operador and......................................................................................................................28
16.2 Operador or........................................................................................................................28
16.3 Operador not.......................................................................................................................29
18.1 Bucle ‘for’ con Listas.....................................................................................................30
Bucle ‘for’ con Listas y función ‘range’: A continuación, se presenta un ejemplo del uso del
bucle for con tipos de estructuras de datos listas con la función range() y la función len():...31
18.2 Bucle ‘for’ con Tuplas....................................................................................................31
18.3 Bucle ‘for’ con Diccionarios..........................................................................................31
18.4 Bucle ‘for’ con ‘else’.......................................................................................................32
Lista de ilustraciones
Python
1. ¿Qué es?
preparado para realizar cualquier tipo de programa, desde aplicaciones Windows a servidores de
red o incluso, páginas web. Es un lenguaje interpretado, lo que significa que no se necesita
compilar el código fuente para poder ejecutarlo, lo que ofrece ventajas como la rapidez de
2. Historia de Python
El creador del lenguaje es un europeo llamado Guido Van Rossum. Hace ya más de una
década que diseño Python, ayudado y motivado por su experiencia en la creación de otro lenguaje
llamado ABC. El objetivo de Guido era cubrir la necesidad de un lenguaje orientado a objetos de
sencillo uso que sirviese para tratar diversas tareas dentro de la programación que habitualmente se
El desarrollo de Python duró varios años, durante los que trabajó en diversas compañías de
desarrollo con el que se había asociado incluso en proyectos empresariales. Actualmente trabaja en
Zope, una plataforma de gestión de contenidos y servidor de aplicaciones para el web, por
3. Características de Python
3.2 Multiplataforma
Originalmente se desarrolló para Unix, aunque cualquier sistema es compatible con el lenguaje
3.3 Interpretado
Quiere decir que no se debe compilar el código antes de su ejecución. En realidad sí que se
realiza una compilación, pero esta se realiza de manera transparente para el programador. En
ciertos casos, cuando se ejecuta por primera vez un código, se producen unos bytecodes que se
guardan en el sistema y que sirven para acelerar la compilación implícita que realiza el intérprete
3.4 Interactivo
sentencias. Cada sentencia se ejecuta y produce un resultado visible, que puede ayudarnos a
rápidamente.
strings, números, archivos, etc. Además, existen muchas librerías que podemos importar en los
programas para tratar temas específicos como la programación de ventanas o sistemas en red o
Por último, destacar que Python tiene una sintaxis muy visual, gracias a una notación
identada (con márgenes) de obligado cumplimiento. En muchos lenguajes, para separar porciones
de código, se utilizan elementos como las llaves o las palabras clave begin y end. Para separar las
porciones de código en Python se debe tabular hacia dentro, colocando un margen al código que
iría dentro de una función o un bucle. Esto ayuda a que todos los programadores adopten unas
mismas notaciones y que los programas de cualquier persona tengan un aspecto muy similar.
manteniendo durante unos cuantos años y se usa bastante debido a que hay mucho código que
depende de esta versión, la versión 3 salió hace unos cuantos años y es la actual rama de desarrollo
con la versión 2 en algunas cosas pero hay formas de hacer código que sea compatible tanto con
Python 2, más pronto que tarde, el tiempo pasa volando, se dejará de mantener y estarás listo para
ese momento.
de visualización, en la mayoría de los casos una pantalla de monitor. Este programa suele ser
interfaz de línea de comandos. En interfaces gráficas la creación de este programa requiere de más
pasos.
correctamente y funcionando.
Python 2.x:
Python 3.x:
print("Hola Mundo");
6. Ejecución
Dependiendo del sistema operativo que esté usando debe realizar procedimientos distintos
para cada plataforma cuando usted quiere escribir y ejecutar un programa Python. Ejemplo:
2 o Python 3 respectivamente.
C:\Python27\python C:\proyectos\holamundo.py
7. Comentarios en python
Los comentarios en Python, al igual que sucede en otros lenguajes de programación, sirven
para explicar a las personas que puedan leer el programa en el futuro, qué es lo que hace el
programa, así como explicar algunas partes del código. Estos comentarios son ignorados por las
doble («»») al principio y al final del comentario (que puede ocupar más de una línea).
8. Variables en python
Cada variable tiene que tener un nombre con el que referirnos a ella. Python tiene en cuenta
si escribimos en mayúsculas o minúsculas la variable (lo que se conoce como case sensitive). No
es lo mismo una variable que se llame f1 que una que se llame F1.
Como es lógico y, para evitar confusiones, el nombre de la variable no puede coincidir con
los nombres de los «comandos» de python (if, for, etc.). Tampoco podremos usar nombres de
variables con tildes o con ñ. Las variables más comunes en python son:
8.1 Número. En números hay dos tipos principales, los números enteros (llamados int) y
los reales (llamados float). El separador decimal que tenemos que usar es el punto. Si no decimos
el tipo de número que se va a usar, Python intentará decidir por sí mismo cuál es el más apropiado
8.2 Textos. Las variables que almacenan texto se denominan strings (str). Tienen que estar
entre comillas sencillas (‘) o dobles («), o si el texto ocupa varias líneas, entre triples comillas
dobles («»»).
Al igual que sucedía con los números, Python supone que lo que introducimos es un texto
al estar entre comillas, aunque siempre podemos forzarle a interpretarlo como texto usando el
comando str.
8.3 Print. El comando print es de gran utilidad para que el programa pueda comunicarse
con el usuario. Este comando muestra el texto que se pone, o incluso el valor que hay dentro de
una variable.
En el caso de que se junten texto y números, se debe tomar la precaución de convertir los números
en texto, ya que si no, Python no sabe cómo se hace la suma de un texto y un número.
11. Conversión
Usar el operador + para juntar dos cadenas de texto puede ser muy útil a la hora de construir
mensajes.
Supóngase, por ejemplo, que has calculado el retorno de tu inversión y quieres resumir los
resultados en una cadena. Asumiendo que las variables flotantes savings y result están definidas,
print ("Yo comencé con $" + savings + " y ahora tengo $" + result + ". ¡Impresionante!")
Sin embargo, esto no funcionará debido a que no puedes simplemente sumar variables de
tipo str con float.
Para arreglar este error, necesitarás convertir explícitamente los tipos de tus variables. Más
en cualquier tipo.
Una colección permite agrupar varios objetos bajo un mismo nombre. Por ejemplo, si necesitamos
almacenar en nuestro programa los nombres de los alumnos de un curso de programación, será
más conveniente ubicarlos a todos dentro de una misma colección de nombre alumnos , en lugar
de crear los objetos alumno1 , alumno2 , etc. En Python existen tres colecciones básicas, a saber:
12.1 Lista
tipos de dato ya mencionados, incluso otras listas. Para crear una lista, especificamos
Dado que se trata de una colección ordenada, accedemos a cada uno de los elementos a
0.
'Python'
'Java'
(En Python, las cadenas de caracteres pueden estar formadas tanto por comillas dobles
como por comillas simples). La posición de un elemento, también conocida como índice, aumenta
de izquierda a derecha cuando éste es positivo. Indicando un número negativo, los elementos se
'C++'
'C'
>>> lenguajes
>>> lenguajes
Nótese que cuando un elemento es eliminado, a excepción del último, todos los que lo
desplazando el resto que le sucede una posición hacia la derecha, vía el método (volveremos sobre
>>> lenguajes
Por último, la operación más común es la de agregar un elemento al final de la lista. Para
>>> lenguajes.append("Haskell")
>>> lenguajes
12.2 Tuplas
Las tuplas, al igual que las listas, son colecciones ordenadas. No obstante, a diferencia de
éstas, son inmutables. Es decir, una vez asignados los elementos, no pueden ser alterados. En
términos funcionales, podría decirse que las tuplas son un subconjunto de las listas, por cuanto
soportan las operaciones con índices para acceder a sus elementos, pero no así las de asignación.
'Python'
'C++'
Un intento por remover un elemento de una tupla o asignarle un nuevo valor arrojará un
error. Ahora bien, si las listas hacen todo lo que hace una tupla, ¿para qué, entonces, existen las
tuplas? Sencillamente porque una tupla, justamente por carecer de todas las funcionalidades de
La función del programador será la de dirimir si para una determinada colección ordenada
de objetos le conviene más una lista o una tupla, según sus elementos deban ser alterados en el
futuro o no.
13. Diccionarios
objetos. Además, sus elementos tienen una particularidad: siempre conforman un par clave-valor.
Es decir, cuando añadimos un valor a un diccionario, se le asigna una clave única con la que luego
Para crear un diccionario, indicamos los pares clave-valor separados por comas y estos, a
son "Python" , "C" y "Java" y sus valores los años en los que fueron creados, a
Para acceder a cualquiera de los valores, debemos indicar su clave entre corchetes.
>>> d["Java"]
1996
Las operaciones de añadir, modificar o eliminar valores son similares a las de las listas.
# Eliminar.
>>> d
Las claves típicamente serán números o cadenas, aunque bien podrían ser de cualquier otro
tipo de dato inmutable (todos los vistos hasta ahora son inmutables, a excepción de las listas y los
diccionarios). Además, nunca puede haber claves repetidas, ya que actúan como identificadores
únicos para un valor determinado. Los valores, en cambio, pueden ser de cualquier tipo de dato,
Hemos visto cómo del se aplica tanto a listas como a diccionarios. Existen varias
funciones que operan sobre distintos tipos de colecciones. Por ejemplo, la función
En la tercera llamada pasamos como argumento una tupla que contiene un solo elemento
(una cadena). No obstante, dado que para definir tuplas se emplean paréntesis, es necesario añadir
Formando líderes para la construcción de un
18
nuevo país en paz
Universidad de Pamplona
Villa del Rosario - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co
una coma al final para que Python entienda que se trata de una tupla en lugar de una expresión (los
Una cadena es, en rigor, una colección de caracteres. Por ello también soporta las
operaciones de acceso a sus elementos (¡no así las de asignación, ya que son inmutables!).
>>> s[4]
'a'
>>> len(s)
13
Por último, para saber si un elemento está dentro de una colección, empleamos la palabra
reservada in .
>>> 10 in (1, 2, 3, 4)
False
True
True
no es necesario cuando trabajas con cadenas de caracteres en Python. Podemos crear una cadena
de caracteres simplemente encerrando contenido entre comillas después de un signo de igual (=).
Una cadena de caracteres en un objeto que consiste precisamente en una serie de signos o
general, incluidas las cadenas de caracteres. Una forma de manipular cadenas de caracteres es
asociamos a las matemáticas, como +, -, *, / y =. Estos signos realizan acciones similares a sus
contrapartes matemáticas cuando se usan con las cadenas de caracteres, aunque no iguales.
de concatenación se realiza mediante el operador de suma (+). Ten en cuenta que debes marcar
print(mensaje1)
14.2 Multiplicar. Si quieres varias copias de una cadena de caracteres utiliza el operador
mensaje2b = 'Mundo'
Formando líderes para la construcción de un
20
nuevo país en paz
Universidad de Pamplona
Villa del Rosario - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co
14.3 Añadir. ¿Qué pasa si quieres añadir material de manera sucesiva al final de una
mensaje3 = 'Hola'
mensaje3 += 'Mundo'
print(mensaje3)
En adición a los operadores, Python trae preinstalado docenas de métodos que te permiten
hacer cosas con las cadenas de caracteres. Solos o en combinación, los métodos pueden hacer casi
todo lo que te imagines con las cadenas de caracteres. Puedes usar como referencia la lista de
métodos de cadenas de caracteres (String Methods) en el sitio web de Python, que incluye
información de cómo utilizar correctamente cada uno. Para asegurar que tengas una comprensión
básica de métodos para cadenas de caracteres, lo que sigue es una breve descripción de los
print(len(mensaje4))
-> 10
14.5 Encontrar. Puedes buscar una sub-cadena en una cadena de caracteres utilizando el
método find y tu programa te indicará el índice de inicio de la misma. Esto es muy útil para
procesos que veremos más adelante. Ten en mente que los índices están numerados de izquierda a
mensaje5a = mensaje5.find("Mundo")
print(mensaje5a)
-> 5
mensaje6a = mensaje6.find("ardilla")
print(mensaje6a)
-> -1
14.6 Minúsculas. A veces es útil convertir una cadena de caracteres a minúsculas. Para
ello se utiliza el método lower. Por ejemplo, al uniformar los caracteres permitimos que la
computadora reconozca fácilmente que “Algunas Veces” y “algunas veces” son la misma frase.
mensaje7a = mensaje7.lower()
print(mensaje7a)
14.7 Reemplazar. Si necesitas cambiar una sub-cadena de una cadena se puede utilizar el
método replace.
print(mensaje8a)
14.8 Cortar. Si quieres cortar partes que no quieras del principio o del final de la cadena
de caracteres, lo puedes hacer creando una sub-cadena. El mismo tipo de técnica te permite separar
mensaje9a = mensaje9[1:8]
print(mensaje9a)
Puedes sustituir las variables por números enteros como en este ejemplo:
startLoc = 2
endLoc = 8
print(mensaje9b)
-> la MunEsto hace mucho más simple usar este método en conjunción con el método find como
en el
Próximo ejemplo, que busca la letra “d” en los seis primeros caracteres de “Hola Mundo” y
correctamente nos dice que no se encuentra ahí (-1). Esta técnica es mucho más eficaz en cadenas
largas -documentos enteros, por ejemplo. Observa que la ausencia de un número entero antes de
los dos puntos significa que queremos empezar desde el principio de la cadena. Podemos usar la
misma técnica para decirle al programa que pase hasta el final de la cadena de caracteres dejando
vacío después de los dos puntos. Y recuerda que la posición del índice empieza a contar desde 0,
no desde 1.
print(mensaje9[:5].find("d"))
-> -1
Hay muchos más, pero los métodos para cadenas de caracteres anteriores son un buen
comienzo. Fíjate que en el ejemplo anterior utilizamos corchetes en vez de paréntesis. Esta
diferencia en los símbolos de la sintaxis es muy importante. Los paréntesis en Python son
utilizados generalmente para llevar un argumento a una función. De tal manera que cuando vemos
algo como:
print(len(mensaje7))
enviar el valor resultante de esa función a la declaración print para ser impresa. Una función puede
ser llamada sin un argumento, pero de todas formas tienes que incluir un par de paréntesis vacíos
mensaje7a = mensaje7.lower()
print(mensaje7a)
Los corchetes sirven para propósitos diferentes. La cadena es una secuencia de caracteres;
así que si quieres acceder al contenido de la cadena a partir de su posición en la secuencia, tienes
Formando líderes para la construcción de un
24
nuevo país en paz
Universidad de Pamplona
Villa del Rosario - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co
que indicarle a Python un lugar en la secuencia. Eso es lo que hacen los corchetes: señalan el lugar
Los valores numéricos son además el resultado de una serie de operadores aritméticos y
matemáticos:
>>> 3 + 2
>>> 4 - 7
-3
>>> -7
-7
>>> 2 * 6
12
>>> 2 ** 6
Formando líderes para la construcción de un
25
nuevo país en paz
Universidad de Pamplona
Villa del Rosario - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co
64
>>> 3.5 / 2
1.75
>>> 3.5 // 22
1.0
No obstante, hay que tener en cuenta que, si utilizamos dos operandos enteros, Python determinará
que quiere que la variable resultado también sea un entero, por lo que el resultado de, por
ejemplo, 3 / 2 y 3 // 2 sería el mismo: 1.
Si quisiéramos obtener los decimales necesitaríamos que al menos uno de los operandos fuera un
r = 3.0 / 2
r = float (3) / 2
Esto es así porque cuando se mezclan tipos de números, Python convierte todos los operandos al
El operador módulo no hace otra cosa que devolver el resto de la división entre los dos operandos.
>>> 7 % 2
1
Formando líderes para la construcción de un
26
nuevo país en paz
Universidad de Pamplona
Villa del Rosario - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co
Exponente: **
Negación: -
Suma, Resta: +, -
>>> 2**1/12
0.16666666666666666
>>>
Más igualmente usted puede omitir este orden de precedencia de ejecución de los operadores
>>> 2**(1/12)
1.0594630943592953
>>>
Estos son los distintos tipos de operadores con los que puede trabajar con valores booleanos, los
False
if (a and b):
Formando líderes para la construcción de un
27
nuevo país en paz
Universidad de Pamplona
Villa del Rosario - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co
else:
16.2 Operador or
True
if (a or b):
else:
False
devuelto es True.
True
Formando líderes para la construcción de un
28
nuevo país en paz
Universidad de Pamplona
Villa del Rosario - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co
else:
Aprovechando que nos hemos dado de bruces con los booleanos, vamos a explicar un
elemento más de Python: la propiedad IN. Es importante advertir que nos estamos refiriendo
hayamos concluido con los principales tipos de datos de Python, y cuyo significado particular,
IN se apoya en el tipo de dato booleano y nos resultará muy útil cuando, por ejemplo, estemos
Al usar in en una expresión referida a una variable que almacene una colección de datos, como
una string, por ejemplo, que almacena una colección de caracteres literales, nos devolverá True si
encuentra lo que le hemos pedido buscar, o False en caso de no encontrarlo. Su sintaxis es muy
sencilla: ítem in nombre_de_la_variable.
lenguajes como C o Pascal. En lugar de siempre iterar sobre una progresión aritmética de números
(como en Pascal) o darle al usuario la posibilidad de definir tanto el paso de la iteración como la
condición de fin (como en C), la sentencia for de Python itera sobre los ítems de cualquier
secuencia (una lista o una cadenas de caracteres), en el orden que aparecen en la secuencia. A
datos listas:
animal, len(animal))
Bucle ‘for’ con Listas y función ‘range’: A continuación, se presenta un ejemplo del uso del
frases[palabra], palabra)
Si se necesita iterar sobre una secuencia de números. Genera una lista conteniendo progresiones
datos Tuplas:
conexion_bd = "127.0.0.1","root","123456","nomina"
print parámetro
datos diccionarios:
datos básicos = {
"nombres":"Leonardo Jose",
"apellidos":"Caballero Garcia",
"cedula":"26938401",
"fecha_nacimiento":"03/12/1980",
"nacionalidad":"Venezolana",
Formando líderes para la construcción de un
31
nuevo país en paz
Universidad de Pamplona
Villa del Rosario - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co
"estado_civil":"Soltero"
valor = datos_basicos.values()
cantidad_datos = datos_basicos.items()
sentencia else.
if).
db_connection = "127.0.0.1","5432","root","nomina"
print parámetro
else:
server=db_connection[0], port=db_connection[1],
user=db_connection[2], db_name=db_connection[3])
En Python tiene una palabra reservada llamada while que nos permite ejecutar ciclos, o
bien secuencias periódicas que nos permiten ejecutar código múltiples veces.
suma, numero = 0, 1
numero = numero + 1
En este ejemplo tiene un contador con un valor inicial de cero, cada iteración del while manipula
esta variable de manera que incremente su valor en 1, por lo que después de su primera iteración el
contar = contar + 1
grado = int(raw_input())
En este casi el evento que se dispara cuando el usuario ingresa el valor -1, causando que el
contar += 1
else:
variable = 10
variable = variable -1
if variable == 5:
break
Adicionalmente existe una forma alternativa de interrumpir o cortar los ciclos utilizando la palabra
reservada break.
Esta nos permite salir del ciclo incluso si la expresión evaluada en while (o en otro ciclo como for)
permanece siendo True. Para comprender mejor use el mismo ejemplo anterior pero se interrumpe
variable = 10
variable = variable -1
if variable == 5:
continue
La sentencia continue hace que pase de nuevo al principio del bucle aunque no se haya terminado
Sucesión de Fibonacci
a, b = 0, 1
print b,
a, b = b, a + b
20. Condicional if
La sentencia condicional if se usa para tomar decisiones, este evaluá básicamente una
operación lógica, es decir una expresión que de como resultado True o False, y ejecuta la pieza de
if numero < 0:
numero = 0
elif numero == 0:
elif numero == 1:
else:
de sentencias seguidas.
21. Funciones
Una función es un bloque de código con un nombre asociado, que recibe cero o más
argumentos como entrada, sigue una secuencia de sentencias, la cuales ejecuta una operación
deseada y devuelve un valor y/o realiza una tarea, este bloque puede ser llamado cuando se
necesite.
Python dispone de una serie de funciones integradas al lenguaje, y también permite crear
por el usuario.
función en el namespace local actual a un objecto función (un envoltorio alrededor del código
ejecutable para la función). Este objeto función contiene una referencia al namespace local global
def NOMBRE(LISTA_DE_PARAMETROS):
"""DOCSTRING_DE_FUNCION"""
SENTENCIAS
RETURN [EXPRESION]
función.
operación dada.
...
>>> hola("Plone")
¡Hola Plone!
sentencias que forman el cuerpo de la función empiezan en la línea siguiente, y deben estar
indentado.
La primera sentencia del cuerpo de la función puede ser opcionalmente una cadena de
en línea o imprimible, o para permitirle al usuario que navegue el código en forma interactiva; es
una buena práctica incluir docstrings en el código que uno escribe, por lo que se debe hacer un
hábito de esto.
Formando líderes para la construcción de un
39
nuevo país en paz
Universidad de Pamplona
Villa del Rosario - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co
imprime por consola. Devolver el objeto por los valores de retorno opcionales.
La ejecución de una función introduce una nueva tabla de símbolos usada para las variables
almacenan el valor en la tabla de símbolos local; así mismo la referencia a variables primero mira
la tabla de símbolos local, luego en la tabla de símbolos local de las funciones externas, luego la
tabla de símbolos global, y finalmente la tabla de nombres predefinidos. Así, no se les puede
asignar directamente un valor a las variables globales dentro de una función (a menos se las
local de la función llamada cuando esta es ejecutada; así, los argumentos son pasados por valor
(dónde el valor es siempre una referencia a un objeto, no el valor del objeto). Cuando una función
llama a otra función, una nueva tabla de símbolos local es creada para esa llamada.
actual. El valor del nombre de la función tiene un tipo que es reconocido por el interprete como
una función definida por el usuario. Este valor puede ser asignado a otro nombre que luego puede
ser usado como una función. Esto sirve como un mecanismo general para renombrar.
Al definir una función los valores los cuales se reciben se denominan parámetros, pero durante la
Cuando enviá argumentos a una función, estos se reciben por orden en los parámetros definidos.
... return a - b
...
20
función b.
Usted debe crear una lista dinámica de argumentos, es decir, un tipo tupla, definiendo el parámetro
...
Hola Plone
[1, 2, 3, 4, 5]
Sin embargo es posible evadir el orden de los parámetros si indica durante la llamada que valor
... return a - b
...
Formando líderes para la construcción de un
41
nuevo país en paz
Universidad de Pamplona
Villa del Rosario - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co
-20
args), usted debe crear un diccionario dinámico de argumentos definiendo el parámetro con dos
asteriscos:
...
Al recibirse como un diccionario, puede iterarlo y mostrar la clave y valor de cada argumento:
...
l => [1, 2, 3, 4, 5]
n => 5
Si requiere aceptar ambos tipos de parámetros simultáneamente en una función, entonces debe
crear ambas colecciones dinámicas. Primero los argumentos indeterminados por valor y luego los
... total = 0
...
>>> super_funcion (50, -1, 1.56, 10, 20, 300, cms="Plone", edad=38)
edad => 38
Muchos frameworks y librerías los utilizan por lo que es una buena práctica llamarlos así.
Al momento de llamar una función la cual tiene definidos unos parámetros, si no pasa los
>>> resta()
argumentos, entonces usted puede asignar unos valores por defecto nulos a los parámetros, de esa
... return
... return a - b
...
20
>>> resta ()
Como puede ver el el código anterior, se indica el final de la función luego de la sentencia print,
ocasión usted no sabe previamente cuantos elementos necesita enviar a una función. En estos
casos puede utilizar los parámetros indeterminados por posición y por nombre.
Es una operación nula — cuando es ejecutada, nada sucede. Eso es útil como un contenedor
cuando una sentencia es requerida sintácticamente, pero no necesita código que ser ejecutado, por
ejemplo:
...
Formando líderes para la construcción de un
44
nuevo país en paz
Universidad de Pamplona
Villa del Rosario - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co
>>> type(consultar_nombre_genero)
<type 'function'>
>>> consultar_nombre_genero("M")
>>>
...
>>> type(macagua)
<type 'classobj'>
Las funciones pueden comunicarse con el exterior de las mismas, al proceso principal del
def suma(numero1,numero2):
print "\n"
>>> suma(23,74)
97
Nota
comas:
...
>>> prueba()
...
>>> prueba()
20 <type 'int'>
En el código anterior puede observar cómo se asignar a distintas variables en base a los valores de
la tupla inmutable.
def iva():
iva = 12
>>> iva ()
36
print "\n"
97
Referencias bibliográficas
0.7.1, S. 1. (2014 - 2018). covantec. Obtenido de covantec: https://entrenamiento-python-
basico.readthedocs.io/es/latest/leccion5/funciones.html