0% encontró este documento útil (0 votos)
6 vistas14 páginas

Proyecto II Introduccion Basica A Python

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)
6 vistas14 páginas

Proyecto II Introduccion Basica A Python

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/ 14

lOMoARcPSD|20934927

Proyecto II Introducción Básica A Python

TECNOLOGÍAS 3 (Universidad Nacional de San Antonio Abad del Cusco)

Scan to open on Studocu

Studocu is not sponsored or endorsed by any college or university


Downloaded by ELIAS BARGAS CRUZ ([email protected])
lOMoARcPSD|20934927

UNIVERSIDAD NACIONAL SAN ANTONIO ABAD


DEL CUSCO
FACULTAD
EDUCACIÓN Y CIENCIAS DE LA COMUNICACIÓN
ESCUELA PROFESIONAL
CIENCIAS DE LA COMUNICACIÓN

TRABAJO MONOGRAFICO

INTRODUCCIÓN BÁSICA A PYTHON

ASIGNATURA: COMUNICACIÓN TICS-TEORIA


DOCENTE: HECTOR EDUARDO UGARTE ROJAS
ALUMNO:

Chacon Ayllone Daygoro 091934

SEMESTRE ACADÉMICO: 2020-II


CUSCO- PERÚ
2020

Downloaded by ELIAS BARGAS CRUZ ([email protected])


lOMoARcPSD|20934927

INTRODUCCIÓN BÁSICA A PYTHON nivel,


RESUMEN
interpretado,
Python es un lenguaje de programación poderoso y fácil de aprender. Cuenta con estructuras de datos eficientes y de
alto nivel y un enfoque simple pero efectivo a la programación orientada a objetos. La elegante sintaxis de Python y su

orientado a
tipado dinámico, junto con su naturaleza interpretada, hacen de éste un lenguaje ideal para scripting y desarrollo
rápido de aplicaciones en diversas áreas y sobre la mayoría de las plataformas. En esta monografía hablaremos sobre
los conceptos y características básicas del lenguaje y el sistema de Python. Hay también numerosos libros que tratan a

objetos y de
Python en profundidad. Este resumen pretende ser exhaustivo y tratar cada una de las características, o siquiera las
características más usadas. También se pretende hablar de las ventajas y desventajas.

Palabras claves:
Python, Características, Instalación.
uso
1. Introducción generalizado
Python es un
interpretado considerado
lenguaje de programación
muy importante tiene una
sintaxis sencilla que cuenta con una vasta biblioteca de
con
herramientas, que hacen de Python un lenguaje de
programación único y en esta monografía abordaremos los
principales aspectos y definiciones. Iniciaremos definiendo
que es Python, para luego poder agregar una pequeña
semántica
reseña historia sobre ella, y así poder conocer un poco más
de como inicio. Continuaremos explicando las
principales características que posee Python y nos
dinámica,
que se
facilitan su uso, como el hecho que es un
lenguaje de programación multiparadigma, el cual
soporta varios paradigmas como orientación de objetos,
programación imperativa, entre otras. Luego abarcaremos
sus ventajas y desventajas que nos ofrece Python,
destacando la ventaja que este programa es simplificado y
rápido. Finalmente tomaremos los temas de su estructura,
aplicaciones, herramientas y elementos que maneja como
utiliza para
identificadoras, operadores, delimitadores entre otros
elementos que maneja Python. Terminaremos con las
conclusiones que hemos llegado como producto de la
la
programació
investigación del presente tema y su respectivo estudio.

2. Python

2.1. Que es n de
Python es un propósito
lenguaje de general.
programació Python es un
n de alto lenguaje de
Downloaded by ELIAS BARGAS CRUZ ([email protected])
lOMoARcPSD|20934927

Python es un lenguaje de programación de alto nivel,

programació interpretado, orientado a objetos y de uso generalizado


con semántica dinámica, que se utiliza para la
programación de propósito general.

n de alto
nivel,
interpretado,
orientado a
objetos y de
uso
generalizado
con
semántica 2.2. Características

dinámica, Las características del lenguaje de programación Python


se resumen a continuación:

que se 


Es un lenguaje interpretado, no compilado, usa
tipado dinámico, fuertemente tipado.
Es multiplataforma, lo cual es ventajoso para

utiliza para 
hacer ejecutable su código fuente entre varios
sistemas operativos.
Es un lenguaje de programación multiparadigma,
el cual soporta varios paradigmas de

la programación como orientación a objetos,


estructurada, programación imperativa y, en
menor medida, programación funcional.

programació  En Python, el formato del código (p. ej., la


indentación) es estructural.

n de 1.2.1. Fuertemente tipado

El fuertemente tipado significa que el tipo de valor

propósito no cambia repentinamente. Un string que contiene


solo dígitos no se convierte mágicamente en un
número. Cada cambio de tipo requiere una
conversión explícita. A continuación, un ejemplo de

general. este concepto:

# se usa el metodo int() para convertir a entero

Downloaded by ELIAS BARGAS CRUZ ([email protected])


lOMoARcPSD|20934927

total = valor1 + int(valor2)  MicroPython, Python ejecutando en


micro controladores.
# se usa el metodo str() para convertir a cadena
 Versiones de Python en otras plataformas, la
print ("El total es: " + str(total)) versión «tradicional» de Python (tiene
nombre código CPython), mas esta versión
ha sido migrada a un número plataformas
1.2.2. Tipado dinámico especializadas y/o antiguas, a continuación,
se destacan algunas de ellas.
El tipado dinámico significa que los objetos en
tiempo de ejecución (valores) tienen un tipo, a  Pythonista, Python para iOS, ofrece un
diferencia del tipado estático donde las variables completo entorno de desarrollo para
tienen un tipo. A continuación, un ejemplo de este escribir scripts Python en su iPad o
concepto: iPhone.

 ActivePython, Python para Solaris,


Usted puede comprarlo (versiones
comerciales y comunitarias, incluidos los
módulos de computación científica, no
print (variable, type(variable)) de código abierto), o compilar desde una
fuente si tiene un compilador de C. Los
# "variable" guarda un valor string paquetes UNIX tienen una variedad de
versiones de Python para una variedad
variable = "activo" de versiones de Solaris. Estos utilizan el
estándar Sun pkgadd.
print (variable, type(variable))
1.2.4. Filosofía «Incluye baterías»

1.2.3. Multiplataforma  Python ha mantenido durante mucho tiempo


esta filosofía de «baterías incluidas»:
Python es multiplataforma, lo cual es ventajoso para
hacer ejecutable su código fuente entre varios  «Tener una biblioteca estándar rica y versátil
sistemas operativos, eso quiere decir, soporta las que está disponible de inmediato. Sin que el
siguientes plataformas para su ejecución: usuario descargue paquetes separados.»

 Versiones Python para Microsoft Windows  Esto le da al lenguaje una ventaja en muchos
(y DOS) (arquitectura x86/x86-64 en proyectos.
presentación de ejecutable, archivo Zip,
instalador basado en la Web).
 Las «baterías incluidas» están en la librería
estándar Python.
 Versiones Python para Mac OSX
(Macintosh) (arquitectura 32bit/64bit en
presentación de instalador ejecutable). 1.2.5. Zen de Python

 Versiones Python en código fuente (archivo Es una colección de 20 principios de software que
tarball del código fuente comprimido con influyen en el diseño del Lenguaje de Programación
XZ y con Gz). Python, de los cuales 19 fueron escritos por Tim
Peters en junio de 1999. El texto es distribuido como
dominio público.
 Versiones de Implementaciones Alternativas
Python, la versión «tradicional» de Python
(tiene nombre código CPython). Existen un El Zen de Python está escrito como la entrada
número de implementaciones alternativas informativa número 20 de las propuestas de mejoras
que están disponibles a continuación: de Python (Python Enhancement Proposals - PEP), y
se puede encontrar en el sitio oficial de Python.
 IronPython, Python ejecutando en .NET.
Los principios están listados a continuación:
 Jython, Python ejecutando en el Java
Virtual Machine.  Bello es mejor que feo.

 PyPy, Una rápida implementación de  Explícito es mejor que implícito.


python con un compilador JIT.
 Simple es mejor que complejo.
 Stackless Python, Una rama del
desarrollo del CPython que soporta  Complejo es mejor que complicado.
microthreads.
Downloaded by ELIAS BARGAS CRUZ ([email protected])
lOMoARcPSD|20934927

 Plano es mejor que anidado. A continuación, se muestra una lista de los tipos que
están integrados en Python. Los módulos de
 Disperso es mejor que denso. extensión (escritos en C, Java u otros lenguajes,
dependiendo de la implementación) pueden definir
tipos adicionales. Las versiones futuras de Python
 La legibilidad cuenta.
pueden agregar tipos a la jerarquía de tipos (por
ejemplo, números racionales, arrays de enteros
 Los casos especiales no son tan especiales como almacenados eficientemente, etc.).
para quebrantar las reglas.
Algunas de las descripciones de tipo a continuación
contienen un párrafo que enumera los «atributos
 Lo práctico gana a lo puro. especiales». Estos son atributos que proporcionan
acceso a la implementación y no están destinados
 Los errores nunca deberían dejarse pasar para uso general. Su definición puede cambiar en el
silenciosamente. futuro.
En Python tiene varios tipos de datos compuestos
 A menos que hayan sido silenciados estándar disponibles por defecto en el intérprete,
explícitamente. como los tipos numéricos, secuencias, mapeos y
conjuntos usados para agrupar otros valores.
 Frente a la ambigüedad, rechaza la tentación de Para el caso de las estructuras de datos se usan
adivinar. variables y constantes las cuales usan operadores
para tratar los tipos de datos estándar.
 Debería haber una -y preferiblemente sólo una- 3.1.1. Clasificación
manera obvia de hacerlo.
Los tipos de datos compuestos estándar se
pueden clasificar como los dos siguientes:
 Aunque esa manera puede no ser obvia al
principio a menos que usted sea holandés. Mutable: su contenido (o dicho valor) puede
cambiarse en tiempo de ejecución.
 Ahora es mejor que nunca. Inmutable: su contenido (o dicho valor) no puede
cambiarse en tiempo de ejecución.
 Aunque nunca es a menudo mejor que ya 3.1.2. Objectos Type
mismo. Los objectos Type representan the various object
types. Un objecto type es accedido por la función
 Si la implementación es difícil de explicar, es integrada type. No hay operaciones especiales en
una mala idea. los tipos. El módulo estándar types defines los
nombres para todos los tipos integrados estándar.
 Si la implementación es fácil de explicar, puede
que sea una buena idea. Los tipos son escritos como esto: «<type “int”>».
3.2. Variables y constantes
 Los espacios de nombres (namespaces) son una
gran idea. 3.2.1. Variables
Es un nombre que se refiere a un objeto que reside en
la memoria. El objeto puede ser de alguno de los tipos
vistos (número o cadena de texto), o alguno de los
otros tipos existentes en Python.
Cada variable debe tener un nombre único llamado
identificador. Eso es muy de ayuda pensar las
variables como contenedores que contienen data el
cual puede ser cambiado después a través de técnicas
3. Tipos y estructuras de datos de programación.
3.2.1.1. Alcance de las variables
En Python tiene varios tipos de datos compuestos Las variables en Python son locales por defecto.
estándar disponibles por defecto en el intérprete, como Esto quiere decir que las variables definidas y
los tipos numéricos, secuencias, mapeos y conjuntos utilizadas en el bloque de código de una función,
usados para agrupar otros valores. sólo tienen existencia dentro de la misma, y no
interfieren con otras variables del resto del código.
Para el caso de las estructuras de datos se usan variables y A su vez, las variables existentes fuera de una
constantes las cuales usan operadores para tratar los tipos función, no son visibles dentro de la misma.
de datos estándar. En caso de que sea conveniente o necesario, una
En esta lección se describen las variables, operadores y variable local puede convertirse en una variable
sus tipos de datos en el lenguaje Python, los cuales se global declarándola explícitamente como tal con la
resumieron en esta tabla. A continuación, el temario de sentencia global.
esta lección: 3.3. Operadores de asignaciones
3.1. Jerarquía de tipos estándar
Downloaded by ELIAS BARGAS CRUZ ([email protected])
lOMoARcPSD|20934927

Existe en Python todo un grupo de operadores los El operador /= divide a la variable del lado izquierdo
cuales le permiten básicamente asignar un valor a el valor del lado derecho.
una variable, usando el operador «=». Con estos
operadores pueden aplicar la técnica denominada
asignación aumentada. >>> r = 5; r /= 10; r
0
3.3.1. Operador =
El operador igual a, (=), es el más simple de todos y En el ejemplo anterior si la variable «r» es igual a 5
asigna a la variable del lado izquierdo cualquier y r /= 10, entonces la variable «r» sera igual a 0. Su
variable o resultado del lado derecho. equivalente seria el siguiente:

3.3.2. Operador += >>> r = 5; r = r / 10; r


El operador += suma a la variable del lado izquierdo 0
el valor del lado derecho.
3.3.6. Operador **=
>>> r = 5; r += 10; r El operador **= calcula el exponente a la variable
15 del lado izquierdo el valor del lado derecho.

En el ejemplo anterior si la variable «r» es igual a 5 >>> r = 5; r **= 10; r


y r += 10, entonces la variable «r» sera igual a 15. 9765625
Su equivalente seria el siguiente:
En el ejemplo anterior si la variable «r» es igual a 5
>>> r = 5; r = r + 10; r y r **= 10, entonces la variable «r» sera igual a
15 9765625. Su equivalente seria el siguiente:

3.3.3. Operador -= >>> r = 5; r = r ** 10; r


El operador -= resta a la variable del lado izquierdo 9765625
el valor del lado derecho.
3.3.7. Operador //=
>>> r = 5; r -= 10; r El operador //= calcula la división entera a la
-5 variable del lado izquierdo el valor del lado derecho.

En el ejemplo anterior si la variable «r» es igual a 5 >>> r = 5; r //= 10; r


y r -= 10, entonces la variable «r» sera igual a -5. Su 0
equivalente seria el siguiente:
En el ejemplo anterior si la variable «r» es igual a 5
>>> r = 5; r = r - 10; r y r //= 10, entonces la variable «r» sera igual a 0. Su
-5 equivalente seria el siguiente:

3.3.4. Operador *= >>> r = 5; r = r // 10; r


El operador *= multiplica a la variable del lado 0
izquierdo el valor del lado derecho.
3.3.8. Operador %=
>>> r = 5; r *= 10; r El operador %= devuelve el resto de la división a la
50 variable del lado izquierdo el valor del lado derecho.

En el ejemplo anterior si la variable «r» es igual a 5 >>> r = 5; r %= 10; r


y r *= 10, entonces la variable «r» sera igual a 50. Su 5
equivalente seria el siguiente:
En el ejemplo anterior si la variable «r» es igual a 5
>>> r = 5; r = r * 10; r y r %= 10, entonces la variable «r» sera igual a 5. Su
50 equivalente seria el siguiente:

3.3.5. Operador /= >>> r = 5; r = r % 10; r


5
Downloaded by ELIAS BARGAS CRUZ ([email protected])
lOMoARcPSD|20934927

3.4.5. Operador Exponente


3.3.9. Asignación aumentada
Es frecuente que una variable tenga que ser definida El operador ** calcula el exponente entre valores de
de nuevo en función de sí misma. Normalmente tipo de datos numéricos.
usted escribir la siguiente sintaxis:
>>> 2 ** 6
>>> contador = contador + 1 64

El código anterior, se puede abreviar a su


equivalente, usando la asignación aumentada, de la 3.4.6. Operador división
siguiente manera:
El operador división el resultado que se devuelve es
un número real.
>>> contador += 1
>>> 3.5 / 2
El código anterior, no sólo es más corto de escribir,
sino también más eficiente en tiempo de ejecución. 1.75

3.4. Operadores aritméticos 3.4.7. Operador división entera

Los valores numéricos son además el resultado de El operador división entera el resultado que se
una serie de operadores aritméticos y matemáticos: devuelve es solo la parte entera.

3.4.1. Operador Suma >>> 3.5 // 22

El operador + suma los valores de tipo de datos 1.0


numéricos.
No obstante hay que tener en cuenta que si utilizamos
>>> 3 + 2 dos operandos enteros, Python determinará que
quiere que la variable resultado también sea un
5 entero, por lo que el resultado de, por
ejemplo, 3 / 2 y 3 // 2 sería el mismo: 1.

3.4.2. Operador Resta Si quisiéramos obtener los decimales necesitaríamos


que al menos uno de los operandos fuera un número
El operador - resta los valores de tipo de datos real, bien indicando los decimales:
numéricos.
r = 3.0 / 2
>>> 4 - 7
O bien utilizando la función float() para convertir a
-3 entero coma flotante o real:

3.4.3. Operador Negación r = float(3) / 2

El operador - asigna un valor negativo a un tipo de Esto es así porque cuando se mezclan tipos de
datos numéricos. números, Python convierte todos los operandos al
tipo más complejo de entre los tipos de los
operandos.
>>> -7

-7 3.4.8. Operador Módulo

3.4.4. Operador Multiplicación El operador módulo no hace otra cosa que devolver el
resto de la división entre los dos operandos. En el
ejemplo, 7 / 2 sería 3, con 1 de resto, luego
El operador * multiplica los valores de tipo de datos el módulo es 1.
numéricos.
>>> 7 % 2
>>> 2 * 6
1
12

Downloaded by ELIAS BARGAS CRUZ ([email protected])


lOMoARcPSD|20934927

3.4.9. Orden de precedencia >>> 5 != 3

El orden de precedencia de ejecución de los True


operadores aritméticos es:
>>> "Plone" != 5
1. Exponente: **
True
2. Negación: -
3. Multiplicación, División, División entera,
>>> "Plone" != False
Módulo: *, /, //, %
4. Suma, Resta: +, -
True

Eso quiere decir que se debe usar así:


3.5.3. Operador <
>>> 2**1/12
El operador < evalua si el valor del lado izquierdo
0.16666666666666666 es menor que el valor del lado derecho.

>>>
>>> 5 < 3

Más igualmente usted puede omitir este orden de False


precedencia de ejecución de los operadores
aritméticos usando paréntesis () anidados entre cada
nivel calculo, por ejemplo: 3.5.4. Operador >

>>> 2**(1/12) El operador > evalua si el valor del lado izquierdo


es mayor que el valor del lado derecho.
1.0594630943592953
>>> 5 > 3
>>>
True
3.5. Operadores relacionales

Los valores booleanos son además el resultado de 3.5.5. Operador <=


expresiones que utilizan operadores relacionales
(comparaciones entre valores): El operador <= evalua si el valor del lado izquierdo
es menor o igual que el valor del lado derecho.
3.5.1. Operador ==
>>> 5 <= 3
El operador == evalua que los valores
sean iguales para varios tipos de datos. False

>>> 5 == 3
3.5.6. Operador >=
False
El operador >= evalua si el valor del lado izquierdo
>>> 5 == 5 es mayor o igual que el valor del lado derecho.

True >>> 5 >= 3


>>> "Plone" == 5 True
False
4. Funciones
>>> "Plone" == "Plone"
Una función es un bloque de código con un nombre
True asociado, que recibe cero o más argumentos como
entrada, sigue una secuencia de sentencias, la cuales
>>> type("Plone") == str ejecuta una operación deseada y devuelve un valor y/o
realiza una tarea, este bloque puede ser llamados
True cuando se necesite.

El uso de funciones es un componente muy importante


3.5.2. Operador != del paradigma de la programación
llamada estructurada, y tiene varias ventajas:
El operador != evalua si los valores son distintos.
Downloaded by ELIAS BARGAS CRUZ ([email protected])
lOMoARcPSD|20934927

 modularización: permite segmentar un programa ... print "Hola", arg, "!"


complejo en una serie de partes o módulos más
simples, facilitando así la programación y el depurado. ...
 reutilización: permite reutilizar una misma
función en distintos programas. >>> hola("Plone")

Python dispone de una serie de funciones integradas al Hola Plone !


lenguaje, y también permite crear funciones definidas
por el usuario para ser usadas en su propios programas. La palabra reservada def se usa para definir funciones.
Debe seguirle el nombre de la función en el ejemplo
anterior hola() y la lista de parámetros formales entre
4.1. Sentencia def paréntesis. Las sentencias que forman el cuerpo de la
función empiezan en la línea siguiente, y deben estar
La sentencia def es una definición de función usada indentado.
para crear objetos funciones definidas por el
usuario. La primera sentencia del cuerpo de la función puede
ser opcionalmente una cadena de caracteres literal; esta
Una definición de función es una sentencia es la cadenas de caracteres de documentación de la
ejecutable. Su ejecución enlaza el nombre de la función, o docstrings. (Puedes encontrar más acerca
función en el namespace local actual a un objecto de docstrings en la sección Cadenas de texto de
función (un envoltorio alrededor del código documentación).
ejecutable para la función). Este objeto función
contiene una referencia al namespace local global Hay herramientas que usan las docstrings para producir
como el namespace global para ser usado cuando la automáticamente documentación en línea o
función es llamada. imprimible, o para permitirle al usuario que navegue el
código en forma interactiva; es una buena práctica
La definición de función no ejecuta el cuerpo de la incluir docstrings en el código que uno escribe, por lo
función; esto es ejecutado solamente cuando la que se debe hacer un hábito de esto.
función es llamada.
La ejecución de la función hola() muestra la impresión
La sintaxis para una definición de función en de un mensaje Hola Plone ! que se imprime por
Python es: consola. Devolver el objeto por los valores de retorno
opcionales.
def NOMBRE(LISTA_DE_PARAMETROS):
La ejecución de una función introduce una nueva tabla
"""DOCSTRING_DE_FUNCION""" de símbolos usada para las variables locales de la
función. Más precisamente, todas las asignaciones de
SENTENCIAS variables en la función almacenan el valor en la tabla
de símbolos local; así mismo la referencia a variables
RETURN [EXPRESION] primero mira la tabla de símbolos local, luego en la
tabla de símbolos local de las funciones externas, luego
A continuación, se detallan el significado de pseudo la tabla de símbolos global, y finalmente la tabla de
código fuente anterior: nombres predefinidos. Así, no se les puede asignar
directamente un valor a las variables globales dentro de
una función (a menos se las nombre en la
NOMBRE, es el nombre de la función. sentencia global), aunque si pueden ser referenciadas.
LISTA_DE_PARAMETROS, es la lista de
parámetros que puede recibir una función.
DOCSTRING_DE_FUNCION, es la cadena de Los parámetros reales (argumentos) de una función se
caracteres usada para documentar la función. introducen en la tabla de símbolos local de la función
SENTENCIAS, es el bloque de sentencias en llamada cuando esta es ejecutada; así, los argumentos
código fuente Python que realizar cierta son pasados por valor (dónde el valor es siempre una
operación dada. referencia a un objeto, no el valor del objeto). Cuando
RETURN, es la sentencia return en código una función llama a otra función, una nueva tabla de
Python. símbolos local es creada para esa llamada.
EXPRESION, es la expresión o variable que
devuelve la sentencia return. La definición de una función introduce el nombre de la
función en la tabla de símbolos actual. El valor del
nombre de la función tiene un tipo que es reconocido
por el intérprete como una función definida por el
usuario. Este valor puede ser asignado a otro nombre
Un ejemplo simple de función esta seguidamente: que luego puede ser usado como una función. Esto
sirve como un mecanismo general para renombrar.
>>> def hola(arg):

... """El docstring de la función"""

Downloaded by ELIAS BARGAS CRUZ ([email protected])


lOMoARcPSD|20934927

4.2. Argumentos y parámetros argumentos, entonces usted puede asignar unos


valores por defecto nulos a los parámetros, de esa
Al definir una función los valores los cuales se reciben forma puede hacer una comprobación antes de
se denominan parámetros, pero durante la llamada los ejecutar el código de la función:
valores que se envían se denominan argumentos.
>>> def resta(a=None, b=None):

4.2.1. Por posición ... if a == None or b == None:

Cuando enviá argumentos a una función, estos se ... print "Error, debes enviar dos números a la
reciben por orden en los parámetros definidos. Se función"
dice por tanto que son argumentos por posición:
... return
>>> def resta(a, b):
... return a - b
... return a - b
...
...
>>> resta(30, 10)
>>> resta(30, 10)
20
20
>>> resta()
En el ejemplo anterior el argumento 30 es la Error, debes enviar dos números a la función
posición 0 por consiguiente es el parámetro de la
función a, seguidamente el argumento 10 es la
Como puede ver el el código anterior, se indica el
posición 1 por consiguiente es el parámetro de la
final de la función luego de la sentencia print,
función b.
usando la sentencia return aunque no devuelva
nada.
4.2.2. Por nombre
4.3. Argumentos indeterminados
Sin embargo es posible evadir el orden de los
parámetros si indica durante la llamada que valor
En alguna ocasión usted no sabe previamente
tiene cada parámetro a partir de su nombre:
cuantos elementos necesita enviar a una función.
En estos casos puede utilizar los parámetros
>>> def resta(a, b): indeterminados por posición y por nombre.
... return a - b
4.3.1. Por posición
...
Usted debe crear una lista dinámica de argumentos,
>>> (b=30, a=10)
es decir, un tipo tupla, definiendo el parámetro con
un asterisco, para recibir los parámetros
-20
indeterminados por posición:

4.2.3. Llamada sin argumentos >>> def indeterminados_posicion(*args):

... for arg in args:


Al momento de llamar una función la cual tiene
definidos unos parámetros, si no pasa los argumentos
... print arg
correctamente provocará una excepción TypeError:
...
>>> resta()
>>> indeterminados_posicion(5,"Hola Plone",
Traceback (most recent call last): [1,2,3,4,5])
File "<stdin>", line 1, in <module> 5
TypeError: resta() takes exactly 2 arguments (0 given) Hola Plone

[1, 2, 3, 4, 5]
4.2.4. Parámetros por defecto

Para solucionar la excepción TypeError ejecutada al


momento de la llamada a una función sin
Downloaded by ELIAS BARGAS CRUZ ([email protected])
lOMoARcPSD|20934927

4.3.2. Por nombre sumatorio => 380.56

Para recibir un número indeterminado de edad => 38


parámetros por nombre (clave-valor o en
inglés keyword args), usted debe crear un cms => Plone
diccionario dinámico de argumentos definiendo el
parámetro con dos asteriscos: Los nombres args y kwargs no son obligatorios,
pero se suelen utilizar por convención.
>>> def indeterminados_nombre(**kwargs):
Muchos frameworks y librerías los utilizan por lo
... print kwargs que es una buena práctica llamarlos así.

...
4.4. Sentencia pass
>>> indeterminados_nombre(n=5, c="Hola Plone",
l=[1,2,3,4,5]) Es una operación nula — cuando es ejecutada, nada
sucede. Eso es útil como un contenedor cuando una
{'c': 'Hola Plone', 'l': [1, 2, 3, 4, 5], 'n': 5} sentencia es requerida sintácticamente, pero no
necesita código que ser ejecutado, por ejemplo:
Al recibirse como un diccionario, puede iterarlo y
mostrar la clave y valor de cada argumento: >>> # una función que no hace nada (aun)

>>> def indeterminados_nombre(**kwargs): ... def consultar_nombre_genero(letra_genero): pass

... for kwarg in kwargs: ...

... print kwarg, "=>", kwargs[kwarg] >>> type(consultar_nombre_genero)

... <type 'function'>

>>> indeterminados_nombre(n=5, c="Hola Plone", >>> consultar_nombre_genero("M")


l=[1,2,3,4,5])
>>>
c => Hola Plone
>>> # una clase sin ningún método (aun)
l => [1, 2, 3, 4, 5]
... class Persona: pass
n => 5
...

4.3.3. Por posición y nombre >>> macagua = Persona

Si requiere aceptar ambos tipos de parámetros >>> type(macagua)


simultáneamente en una función, entonces debe
crear ambas colecciones dinámicas. Primero los <type 'classobj'>
argumentos indeterminados por valor y luego los
cuales son por clave y valor:
4.5. Sentencia return
>>> def super_funcion(*args,**kwargs):
Las funciones pueden comunicarse con el exterior
... total = 0 de las mismas, al proceso principal del programa
usando la sentencia return. El proceso de
... for arg in args: comunicación con el exterior se hace devolviendo
valores. A continuación, un ejemplo de función
... total += arg usando return:

... print "sumatorio => ", total print (numero1 + numero2)

... for kwarg in kwargs: print ("\n")

... print kwarg, "=>", kwargs[kwarg] Esta función se llama de la siguiente forma:

...
>>> suma(23,74)
>>> super_funcion(50, -1, 1.56, 10, 20, 300,
97
cms="Plone", edad=38)
Downloaded by ELIAS BARGAS CRUZ ([email protected])
lOMoARcPSD|20934927

Nota Weekly News. Además, lo puedes emplear para


crear sitios web interactivos, interfaz estándar de
Por defecto, las funciones retorna el valor None. conexión de servidores, entre otros. Python es un
lenguaje con sintaxis muy simple, clara y sencilla; el
tipado dinámico, el gestor de memoria, la gran
4.5.1. Retorno múltiple cantidad de librerías disponibles y la potencia del
lenguaje, entre otros.
Una característica interesante, es la posibilidad de
devolver valores múltiples separados por comas: 5.2. Desventajas
La “curva de aprendizaje cuando ya estás en la parte
>>> def prueba(): web no es tan sencilla”. Además, la mayoría de los
servidores no tienen soporte a Python, y si lo
... return "Plone CMS", 20, [1,2,3] soportan, la configuración es un poco difícil y
finalmente presenta desventajas porque algunas
... librerías que trae por defecto no son del gusto de
amplio de la comunidad, y optan a usar librerías de
>>> prueba() terceros.
('Plone CMS', 20, [1, 2, 3])
6. Elementos
En el código anterior los valores múltiples se tratan
en conjunto como una tupla inmutable y se pueden 6.1. Identificadores:
reasignar a distintas variables:
Los identificadores son las palabras que se utilizan
para nombrar elementos creados por el usuario u
>>> def prueba(): otros usuarios. Esos elementos pueden ser
variables u objetos que almacenan
... return "Plone CMS", 20, [1,2,3]
información, funciones que agrupan instrucciones,
clases que combinan ambos, módulos que agrupan
...
los elementos anteriores, etc.
>>> prueba()
6.2. Tipo de datos:
('Plone CMS', 20, [1, 2, 3]) Una variable (o constante) puede contener valores
de diversos tipos. Entre ellos:
>>> cadena, numero, lista = prueba()
 String
>>> print cadena, type(cadena)  Número entero
 Número octal
Plone CMS <type 'str'>
 Número hexadecimal
>>> print numero, type(numero)  Número real
 Booleano
20 <type 'int'>
6.3. Operadores Aritméticos:
>>> print lista, type(lista) Entre los operadores aritméticos que Pythonutiliza,
podemos encontrar los siguientes:
[1, 2, 3] <type 'list'>  Suma (+)
 Resta (-)
En el código anterior puede observar cómo se asignar
 Negación (-)
a distintas variables en base a los valores de
la tupla inmutable.  Exponente (**)
 Multiplicación (*)
5. Ventajas y desventajas de Python  División (/)
 División entera (//)
5.1. Ventajas  Módulo (%)
Se caracteriza por tener algunas características
de lenguajes que le preceden. Respecto a
esto último, te puedo mencionar como
ejemplo las maneras en la que se imprime 7. Conclusión
un valor determinado ya sea a través de En conclusión, el programa Python es un lenguaje
patrones o con la concatenación de con el cual se puede realizar cualquier tipo de
elementos. Debido a las ventajas programa porque posee características, ventajas y
proporcionadas por este lenguaje de programación, herramientas que nos permite desarrollar diversos
se usa ampliamente en la web. Por ejemplo, es muy proyectos y aplicaciones de cualquier índole, ya sea
popular en los mapas de Yahoo, Ultraseek y Linux científica, lúdica, informativa, empresarial, etc. en cual
Downloaded by ELIAS BARGAS CRUZ ([email protected])
lOMoARcPSD|20934927

trabajemos. También es necesario destacar la


labor de las librerías y los frameworks que implica
este lenguaje, ya que facilitan el proceso y desarrollo de
los proyectos de programación aplicativos. Python
nació como respuesta a la dificultad de otros
lenguajes de programación. Este nuevo lenguaje (no
tan nuevo) se considera fácil de aprender, enseñar,
utilizar, comprender y obtener. Fue creada por solo una
persona, pero se desarrolla por diversos programadores
ya que es un código abierto (una de sus tantas ventajas).
Actualmente Python está atravesando su propio camino
de evolución, creando sus propios estándares y hábitos.
Es un lenguaje que no se deja de desarrollar.Es de suma
importancia conocer las ventajas y desventajas que nos
ofrece Python con respecto a otros lenguajes de la
actualidad, cabe resaltar que este es un lenguaje
dinámico y mucho más accesible para alumnos como
nosotros que estamos iniciando a programar. En suma,
las herramientas básicas nos permiten comprender las
bondades del programa y la razón por la que es mucho
más comercial en los últimos años.

8. Referencias
https://www.studocu.com/pe/document/universidad-
nacional-mayor-de-san-marcos/lenguaje-de-
programacion/informe/monografia-python-nota-
17/9118422/view
https://entrenamiento-python-
basico.readthedocs.io/es/latest/leccion5/funciones.ht
ml
[7]https://es.wikipedia.org/wiki/Open_Handset_Allia
nce
[8]https://www.google.com/url?sa=i&url=https%3A
%2F%2Fblog.mindorks.com%2Fwhat-are-the-
differences-between-dalvik-and-
art&psig=AOvVaw0J-
ljJTg0qhAYBU7pVzwsp&ust=1609787663640000&
source=images&cd=vfe&ved=0CAIQjRxqFwoTCOj
e1MO8gO4CFQAAAAAdAAAAABAT
[9] https://es.wikipedia.org/wiki/Android#Versiones
[10]https://norfipc.com/celulares/todas-versiones-
sistema-operativo-android.php

Downloaded by ELIAS BARGAS CRUZ ([email protected])

También podría gustarte