Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Programación

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 38

TECNOLÓGICO NACIONAL DE MÉXICO

INSTITUTO TECNOLÓGICO DEL VALLE DE ETLA


INGENIERÍA EN ENERGÍAS RENOVABLES

NOMBRE DE LA MATERIA: PROGRAMACIÓN

TITULO DEL TRABAJO: REALIZAR UNA INVESTIGACIÓN DE PYHON

NOMBRE DE LA ALUMNA: CORDERO HERNÁNDEZ CONSTANZA

ASESOR : ing: KORA REYNALDA SOLIS

FECHA DE LA ENTREGA DE TRABAJO: 21 De Septiembre Del 2023

SEMESTRE: 1°A

UNIÓN HIDALGO OAXACA

1
ÍNDICE:

 LA INTRODUCCIÓN DE PYHON………….3
 QUE ES EL PYHON……….. 4
 PARA QUE SIRVE EL PYHON………...7
 CUALES SON SUS CARACTERÍSTICAS DE
PYTHON……….9
 COMO SE INSTALA EN WINDOWS EN PYTHON…………
13
 CUÁL ES SU SINTAXIS DE PYHON……………..20
 ESCTUTRURA DE UNA PROGRAMACIÓN DE
PYHON……….. 22
 DECLARACIÓN DE UNA VARIABLES EN
PYTHON…………… 27
 SENTENCIAS DE ENTRADA/SALIDA DE PYTHON…….28
 EXPRESIONES ARITMÉTICA , LOGIGAS, Y RELACIONES
DE PYTHON……..31
 CONCLUSIÓN DE NOSOTROS…….. 37
 REFERENCIA ELECTRÓNICAS. ……..38

2
INTRUDCION

Guido van Rossum es un programador holandés conocido como el creador del lenguaje
de programación Python. Desde su creación en 1989, Python ha sido adoptado por
programadores de todo el mundo y es utilizado en una amplia gama de
aplicacionesGuido van Rossum nació en Países Bajos en 1956 y mostró un gran interés
por la programación desde muy joven. Después de estudiar matemáticas y ciencias de la
computación en la Universidad de Ámsterdam, trabajó en el Centro de Investigación de
Matemáticas de los Países Bajos y luego en el Instituto Nacional de Estándares
Tecnología en Maryland, Estados Unidos.Fue en el Instituto Nacional de Estándares y
Tecnología donde van Rossum creó Python en 1989. El objetivo era crear un lenguaje de
programación que fuera fácil de leer y escribir, pero que también fuera poderoso y
extensible. El nombre "Python" se inspiró en la afición de van Rossum por el grupo de
comedia británico Monty Python.A lo largo de los años, van Rossum siguió liderando el
desarrollo de Python y estableció la Python Software Foundation en 2001. En 2018,
anunció su retiro de la Fundación y de Python en sí, pero su legado continúa vivo.
Python es utilizado por empresas como Google, Instagram, Dropbox y Spotify, entre
otras.La creación de Python por parte de Guido van Rossum ha sido una contribución
significativa al mundo de la programación y la tecnología en general. Su enfoque en la
simplicidad y la facilidad de uso ha hecho que Python sea accesible para programadores
de todos los niveles de habilidad, y su legado continuará influyendo en la tecnología
durante muchos años más.“Me gusta pensar en Python como un lenguaje de
programación en el que es posible escribir código que es tan fácil de leer como el
lenguaje en sí mismo". Esta frase de Guido van Rossum refleja su enfoque en la
simplicidad y la facilidad de uso en la creación de Python. Él creía que la legibilidad del
código era esencial para hacer la programación más accesible y efectiva. Guido van
Rossum es un programador holandés conocido como el creador del lenguaje de
programación Python. Desde su creación en 1989, Python ha sido adoptado por
programadores de todo el mundo y es utilizado en una amplia gama de aplicaciones.

Guido van Rossum nació en Países Bajos en 1956 y mostró un gran interés por la
programación desde muy joven. Después de estudiar matemáticas y ciencias de la
computación en la Universidad de Ámsterdam, trabajó en el Centro de Investigación de
Matemáticas de los Países Bajos y luego en

3
QUE ES EL PYHON:

Python es la navaja suiza de los programadores. Se trata de un veterano lenguaje de


programación presente en multitud de aplicaciones y sistemas operativos. Podemos
encontrarlo corriendo en servidores, en aplicaciones iOS, Android, Linux, Windows o
Mac. Esto es debido a que cuenta con una curva de aprendizaje moderada ya que su
filosofía hace hincapié en ofrecer una sintaxis de código legible.

Es un lenguaje de programación versátil multiplataforma y multiparadigma que se


destaca por su código legible y limpio. Una de las razones de su éxito es que cuenta con
una licencia de código abierto que permite su utilización en cualquier escenario. Esto
hace que sea uno de los lenguajes de iniciación de muchos programadores siendo
impartido en escuelas y universidades de todo el mundo. Sumado a esto cuenta con
grandes compañías que hacen de este un uso intensivo. Tal es el caso de Google,
Facebook o Youtube, ya que permite, entre otras de sus características la automatización
de procesos y ejecución de tareas en tanto en entorno cliente como servidor.

Python es ideal para trabajar con grandes volúmenes de datos ya que, el ser
multiplataforma, favorece su extracción y procesamiento, por eso lo eligen las empresas
de Big Data. A nivel científico, tiene una gran biblioteca de recursos con especial énfasis
en las matemáticas para aspirantes a programadores en áreas especializadas. Y si esto
fuera poco, es posible crear videojuegos aunque no es tan eficiente como Java o C#.

Python nació a principios de los 90 y, en un inicio, fue desarrollado como un hobby

por Guido Van Rossum, un ingeniero holandés que trabajaba en ese momento en el CWI

de Amsterdam, el Centro de Investigación de Ciencias de la Computación holandés y

como.

4
En términos técnicos, Python es un lenguaje de programación de alto nivel, orientado a

objetos, con una semántica dinámica integrada, principalmente para el desarrollo web y

de aplicaciones informáticas.

Es muy atractivo en el campo del Desarrollo Rápido de Aplicaciones (RAD) porque ofrece

tipificación dinámica y opciones de encuadernación dinámicas.

Python es relativamente simple, por lo que es fácil de aprender, ya que requiere una

sintaxis única que se centra en la legibilidad. Los desarrolladores pueden leer y traducir

el código Python mucho más fácilmente que otros lenguajes.


Por tanto, esto reduce el costo de mantenimiento y de desarrollo del programa porque

permite que los equipos trabajen en colaboración sin barreras significativas de lenguaje

y experimentación.

Además, soporta el uso de módulos y paquetes, lo que significa que los programas

pueden ser diseñados en un estilo modular y el código puede ser reutilizado en varios

proyectos. Una vez se ha desarrollado un módulo o paquete, se puede escalar para su

uso en otros proyectos, y es fácil de importar o exportar.

Por otro lado, uno de los beneficios más importantes de Python es que tanto la librería

estándar como el intérprete están disponibles gratuitamente, tanto en forma binaria


como en forma de fuente.

Tampoco hay exclusividad, ya que Python y todas las herramientas necesarias están

disponibles en todas las plataformas principales. Por lo tanto, es una

opción multiplataforma, bastante tentadora para los desarrolladores que no quieren

preocuparse por pagar altos costos de desarrollo.

En definitiva, es un lenguaje de programación relativamente fácil de aprender, y las

herramientas necesarias están disponibles para todos de forma gratuita. Esto hace que

sea accesible para casi todo el mundo. Si dispones de tiempo para aprender, conseguirás

crear esos proyectos que tienes en mente.

5
curiosidad el nombre elegido, Python, fue tomado del grupo cómico británico Monty
Python, del que Guido era un gran fan.

6
PARA QUE SIRVE PYHON:

Su objetivo es la automatización de procesos para ahorrar tanto complicaciones como


tiempo, los dos pilares en cualquier tarea profesional. Dichos procesos se reducirán
en pocas líneas de código que insertarás en una variedad de plataformas y sistemas
operativos.
Quienes saben para qué sirve Python tienen claro que se utiliza en prácticamente
todas las industrias y campos científicos que pueda imaginarse, como:
 Ciencia de los datos. El poder de las bibliotecas Python desarrolladas para
el análisis y visualización de datos es asombroso. Con una biblioteca de
visualización de datos de Python, puede crearse una amplia variedad de
gráficos y representaciones visuales de todo tipo.
 Aprendizaje automático. Python es una herramienta esencial para todos
los desarrolladores que quieran sumergirse en el campo del machine
learning. Una de las bibliotecas más populares que utilizan los
desarrolladores de todo el mundo para trabajar con Python aplicado al
aprendizaje automático es TensorFlow. Se trata de un centro de recursos
gratuito de código abierto desarrollado por el equipo de Google Brain. Esta
biblioteca se utiliza para investigación y producción en Google.
 Desarrollo web. Python se utiliza en el campo del desarrollo web para
construir el back-end de aplicaciones web.
 Educación en Ciencias de la Computación. Python se usa ampliamente
como herramienta de enseñanza porque es fácil de aprender: su sintaxis es
simple y se puede aprender rápidamente. Es potente y permite a los
estudiantes comenzar a adquirir habilidades valiosas para sus carreras de
inmediato, y es versátil, ya que admite varios paradigmas de programación
como la programación imperativa, la programación funcional, la
programación procedimental y la programación orientada a objetos.
 Visión por ordenador y procesamiento de imágenes. Permite a los
desarrolladores integrar funciones de detección de visión dentro de las
aplicaciones de manera sencilla.
 Desarrollo de juegos. Los juegos crean recuerdos atemporales y seguirán
formando parte de nuestra sociedad en los próximos años. Python
respalda la innovación aplicada a la creación de juegos.
 Medicina y Farmacología. Python también tiene aplicaciones asombrosas
en el campo médico que mejoran la capacidad de brindar diagnósticos y
tratamientos precisos y eficientes a los pacientes.
 Biología y Bioinformática. Sus aplicaciones en estos campos tienen que ver
con el procesamiento de secuencias de ADN, la simulación de dinámica y
genética de poblaciones y el modelado de estructuras bioquímicas.
 Neurociencia y Psicología. Tal y como se publica en un reciente artículo, "la
computación se está volviendo esencial en todas las ciencias, para la

7
adquisición y análisis de datos, la automatización y la prueba de hipótesis
a través del modelado y simulación".
 Astronomía. Python también tiene aplicaciones en Astronomía y
Astrofísica. Sus principales aportaciones a estas áreas son AstroPy, SunPy y
SpacePy.
 Otras áreas como robótica, vehículos autónomos, negocios, meteorología
y desarrollo de interfaces gráficas de usuario también se benefician del
uso de Python.

8
CUÁLES SON SUS CARACTERÍSTICAS PYHON

 Un lenguaje sencillo, legible y elegante que atiende a un conjunto de reglas que


hacen muy corta su curva de aprendizaje. Si ya tienes unas nociones de
programación o vienes de programar en otros lenguajes como Java no te será
difícil comenzar a leer y entender el código desarrollado en Python.El siguiente
paso es comenzar a programar, verás que con muy pocas líneas de código es
posible programar algoritmos complejos. Esto hace de Python un lenguaje
práctico que permite ahorrar mucho tiempo. Programación orientada a objetos:
Python se organiza en clases y objetos, por lo cual es posible representar
conceptos de la vida diaria en el lenguaje. Esto lo hace más eficiente a largo
plazo, ya que es posible reutilizar dichos conceptos en cualquier momento.
 Lenguaje interpretado: A diferencia de otros lenguajes, con Python no es
necesario complicar el código fuente a código máquina, pues ya se cuenta con un
intérprete que ejecutará el programa directo del código.
 Multiplataforma: Es posible ejecutar este lenguaje de programación en muchos
sistemas operativos (Windows, Linux, Mac, etc.) y dispositivos, ya que se ha
diseñado intérpretes para cada sistema.
 Tipado dinámico: Con Python no es necesario que las variables se tipifiquen,
pues estas adoptan un tipo en función del valor asignado.
 Fuertemente tipado: Los valores ingresados no cambian de un momento a otro, y
en caso de hacerlo, se debe marcar. Esto previene errores a largo plazo, pues los
señala desde el inicio.
 Código abierto: Python permite que cualquier desarrollador contribuya al código,
de esta forma el código base sigue creciendo y se adapta a las necesidades de
cada programador.
 Fácil de aprender: Este lenguaje de programación es bastante amigable, tanto
para los programadores que van iniciando, hasta los que tienen experiencia en
otros lenguajes.
 Soporte para GUI: Python es compatible con distintas Interfaces Gráficas de
Usuario (GUI), así que el código puede tener distintas apariencias, lo cual
aumenta la visibilidad.
 Portabilidad: Permite que el código pueda trasladarse de un sistema a otro sin
hacerle algún cambio.

9
LAS VENTAJAS Y DESVENTAJAS DE PYTHON

Ventajas de Python

Python tiene diversas aplicaciones en las empresas dedicadas al desarrollo de software,


como frameworks, aplicaciones web, creación de prototipos, etc. Esto proporciona a
Python una ventaja competitiva frente a otros lenguajes de programación utilizados en
el área, por lo que, debido a los beneficios de Python, muchos son los que lo emplean.

Entre las ventajas de programar en Python, destacan las siguientes:

1. Lenguaje de alto nivel

Python es un lenguaje de alto nivel, por lo que es más fácil de usar que los de bajo
nivel, puesto que estos últimos no tienen mucha abstracción de lenguaje de máquina.
Para programar con Python se pueden usar elementos del lenguaje natural, ya que tiene
una sintaxis similar al inglés, por lo que es fácil de leer, escribir y aprender.

2. Polivalente y de paradigmas

Una de las grandes ventajas de Python. Python, al ser un lenguaje de propósito general,
se puede usar para diversos propósitos. Es una gran opción para el desarrollo de
software, ya que permite a los desarrolladores utilizar grandes frameworks como Django
y Flask. Además, se puede utilizar para scripts web, desarrollo de GUI de escritorio o
data science.

Asimismo, a Python se le considera un lenguaje de paradigmas múltiples, que admite


programación estructurada, funcional y orientada a objetos.

3. Bibliotecas y frameworks

Dentro de las ventajas y desventajas de Python su mayor beneficio es que tiene una
amplia colección de bibliotecas y frameworks.

La biblioteca estándar de Python es muy extensa, puesto que contiene muchos módulos
integrados. Además, los usuarios de Python también pueden encontrar bibliotecas
adicionales disponibles en PyPI (índice de paquetes de Python) .

Para Data Science, destacan bibliotecas para manejar funciones matemáticas y


científicas, como TensorFlow, PyTorch o NumPy. Con respecto a los full-stack
web frameworks, Python tiene múltiples soluciones, como TurboGears, Dash o Django

10
4. Portabilidad

Python es compatible con todos los sistemas operativos (macOS, Linux, UNIX y
Windows), y los programadores solo necesitan escribir código una vez y luego podrá
ejecutarse en todas partes.

5. Gratis y de código abierto

Python es un lenguaje de programación desarrollado bajo la licencia de código


abierto aprobada por OSI, todos pueden usarlo y distribuirlo libremente.

6. Baja curva de aprendizaje

La sencillez de la sintaxis de Python permite escribir programas totalmente funcionales


en pocas líneas de código, por lo que su curva de aprendizaje es muy baja. En pocos días
de aprendizaje con Python, cualquier persona puede programar programas sencillos.

7. Comunidad fuerte

El hecho de que Python sea gratuito y de código abierto contribuye a crear una
comunidad sólida. Los programadores de Python pueden descargar el código fuente,
modificarlo y distribuirlo como deseen.

Desventajas de Python

Aunque Python tiene numerosas ventajas, también presenta ciertas deficiencias, ya que
no es un lenguaje perfecto. Encontramos las siguientes desventajas de Python:

1. Lentitud

La lentitud de Python se debe principalmente a su naturaleza dinámica y versatilidad.


No obstante, hay formas de optimizar las aplicaciones de Python aprovechando la
sincronización, entendiendo las herramientas de creación de perfiles y considerando el
uso de múltiples intérpretes.

2. Consumo de memoria

Otra de las desventajas de Python es que, en el caso de que una tarea requiera mucha
memoria, Python no es la mejor opción. El consumo de memoria de Python es muy alto,
y esto se debe a la flexibilidad de los tipos de datos.

11
3. Desarrollo móvil

Python es ideal para plataformas de escritorio y servidor, pero para el desarrollo móvil
no es un lenguaje muy adecuado. Por este motivo, apenas vemos aplicaciones móviles
desarrolladas con Python.

Hemos repasado las principales ventajas y desventajas de Python a través de sus


principales funcionalidades y ahora sabemos por qué usar Python. Aunque no es el
lenguaje de programación perfecto se queda cerca de serlo.

Ahora que conoces las ventajas y desventajas de Python, ¿quieres empezar a formarte
en este lenguaje? Con nuestro Bootcamp Full Stack Jr. en Aprende a Programar desde
Cero dominarás el pensamiento computacional mientras te inicias en las metodologías y
claves para escribir un código útil, rápido y elegante con todas las características de
Python.

Acá también podrás conocer las ventajas y desventjas de Java, entre otros lenguajes de
programación, para qué puedes determinar cuál es mejor, si Java o Python.

12
CÓMO SE INSTALA EL WINDOWS EN PYTHON

Instalación de Python, paso a paso

A finales de 2016 se produjo el lanzamiento de Python 3.6. El propósito de esta entrada


es mostrar, paso a paso, su instalación en equipos con distintas versiones
de Windows y Ubuntu.

Windows 7, 8, 8.1 y 10

Para instalar Python 3.6 en un equipo con el sistema


operativo Windows 7, 8, 8.1 o 10 utilizar una cuenta de usuario con privilegios de
administrador, o bien, la propia cuenta del administrador local. Por seguridad, se puede
agregar -temporalmente- para este proceso de instalación la cuenta del usuario actual al
grupo local Administradores. Para ello, iniciar la aplicación de Administración de
equipos, acceder a la herramienta del sistema Usuarios y grupos locales y agregar la
cuenta actual a dicho grupo.

En los sistemas con arquitectura 64 bit se puede instalar tanto la versión de Python para
32 bit como para 64 bit. En general, trabajar con la versión para 64 bit mejora el
rendimiento y permite que un programa pueda utilizar más de 4 Gb de RAM, memoria
límite en sistemas 32 bit. Normalmente, trabajando por debajo de este límite no se
observan diferencias de rendimiento importantes entre ambas versiones pero se
recomienda instalar la versión de 64 bit. De todas formas, si se van a utilizar módulos de
terceros, conviene comprobar si están disponibles para la versión a instalar.

Para instalar Python 3.6 seguir los siguientes pasos:


13
1. Ir al área de descargas para Windows del sitio oficial y descargar el instalador
ejecutable Python 3.6 de 32 o 64 bit.

2. Iniciar la instalación ejecutando el archivo descargado Python-3.6.0.exe o Python-


3.6.0-amd64.exe con doble clic. Si es necesario, confirmar la ejecución en la ventana de
advertencia de seguridad de Abrir archivo.

3. Una vez iniciado el instalador, en la ventana Install Python 3.6.0 (64 bit) activar las
casillas de las opciones: Install launcher for all users (recommended) y Add Python
3.6 to PATH. Después, continuar seleccionando la opción Customize installation. Choose
Location and features.

14
4. En la ventana Optional features verificar que están activas todas las opciones y hacer
clic en el botón [Next].

5. En la ventana Advanced Options verificar que están activas las opciones de la imagen,
escribir la ruta del directorio de instalación "C:\Python36" (o aceptar la ruta por defecto)
y comenzar la instalación haciendo clic en el botón [Install].

6. A continuación, después de unos segundos de espera, comenzará el proceso de


instalación de Python.

15
7. En la ventana Setup was successful, una vez que ha concluido el proceso de instalación
hacer clic en el botón [Close]. Desde esta ventana es posible acceder a un tutorial
online de Python, a la documentación oficial del lenguaje y a información con
las novedades de la presente versión.

8. Para probar Python acceder a la línea de comandos ejecutando el


programa cmd.exe o Símbolo del sistema. Después, escribir "python" y aceptar para
iniciar el entorno interactivo de Python donde se puede verificar la versión de Python
instalada y es posible introducir comandos Python. Para finalizar, introducir quit() o
presionar Ctrl+D.

A partir de este momento se puede instalar cualquier paquete de un tercero utilizando,


entre otros, el instalador PIP. Por ejemplo, para instalar el entorno interactivo ipython:

C:\> pip install ipython

Se instalará ipython con todas sus dependencias. En el repositorio PyPI hay decenas de
miles de paquetes disponibles para abordar todo tipo de proyectos Python.

Explorar el directorio de instalación

En este caso la instalación de Python3.6 se ha realizado en el directorio C:\Python36. En


un primer vistazo en el directorio se observan otros subdirectorios y los ejecutables que
invocan al intérprete: python.exe (ejecuta programas .py y programas compilados .pyc)

16
y pythonw.exe (ejecuta programas .pyw que utilizan interfaz gráfica). También, están los
archivos con información general (README.TXT), sobre la licencia (LICENSE.TXT) y las
novedades de la presente versión (NEWS.TXT).

En el directorio C:\Python36\Doc se encuentra una guía de ayuda muy completa de


Python que se puede explorar con un navegador web: python360.chm

En el directorio C:\Python36\Scripts están las herramientas de instalación de


paquetes easy_install y pip.

En el directorio C:\Python36\Lib están los módulos de la Librería Estándar de Python y el


espacio por defecto donde se instalan los paquetes de terceros: site-packages

En el directorio C:\Python36\Tcl se encuentra las librerías Tcl/Tkinter para el desarrollo


de aplicaciones gráficas con Python. Este binding es considerado un estándar para la
interfaz gráfica de usuario para Python.

Ubuntu 14.04, 16.04 y 16.10 (y derivados)

Para instalar Python 3.6 en un equipo con el sistema operativo Ubuntu se siguen
procedimientos diferentes en función a la versión del sistema instalado.

Para conocer la versión del sistema operativo acceder a la línea de comandos (Terminal)
e introducir el siguiente comando:

17
$ lsb_release -d

Ejemplo: Description: Ubuntu 14.04.5 LTS

14.04 y 16.04

Para instalar Python con las versiones 14.04 y 16.04 ejecutar los siguientes comandos:

$ sudo add-apt-repository ppa:jonathonf/python-3.6


$ sudo apt-get update
$ sudo apt-get install python3.6

16.10

Para instalar Python con la versión 16.10 ejecutar los siguientes comandos:

$ sudo apt-get update


$ sudo apt-get install python3.6

Instalar el instalador de paquetes PIP para Python 3.6

Antes de instalar PIP es necesario instalar las herramientas Setuptools. Para ello,
descargar el archivo que contiene las herramientas Setuptools de PyPI. A continuación,
descomprimir el archivo descargado e instalar con:

$ sudo python3.6 setup.py install

Finalmente, descargar el archivo get-pip.py de https://bootstrap.pypa.io/get-pip.py y


ejecutar:

$ sudo python3.6 get-pip.py

En caso de utilizar proxy con autenticación:

$ sudo python3.6 get-pip.py --proxy http://user:pass@server:port

18
Normalmente, la mayoría de los sistemas GNU/Linux instalan alguna versión de Python
por defecto. El proceso de instalación de Python 3.6 no sustituye ni elimina ninguna
instalación anterior.

Para ejecutar un programa con la versión instalada por defecto:

$ python3 programa.py

$ python programa.py (si no hay ninguna versión instalada de Python 2.x)

Para ejecutar un programa con alguna versión especifica instalada:

$ python3.6 programa.py
$ python3.4 programa.py

19
SUS SINTAXIS DE PYHON

Hay dos enfoques diferentes que he probado. Puedes usar PyGame; esto tiene la
ventaja de que es posible que ya lo estés usando (en cuyo caso es la solución más
simple) y ya está instalado en el sistema Python de tu Pi. Sin embargo, tiene el
inconveniente de que requiere una pantalla; aunque soy consciente de que existen
soluciones para esto, en realidad no son muy satisfactorias. La segunda opción es usar
los enlaces de Python para evdev; esto es liviano, pero tiene el inconveniente de ser más
complejo de usar y solo funciona en Linux, incluso si estás en un sistema tipo Unix como
OSX, no puedes usarlo. mientras que PyGame es generalmente adecuado para uso
multiplataforma. Como solo quiero ejecutar esto en Pi y porque realmente necesito que
funcione limpiamente en un entorno sin cabeza, elegí evdev, pero hay argumentos para
ambos.

En realidad, usar evdev no es trivial, la mejor documentación que tengo es el código que
escribí para manejarlo. Creé una clase de Python triangula.input.SixAxisy el recurso
correspondiente triangula.input.SixAxisResourcepara que sea más sencillo trabajar con
esto. La clase usa asyncore para sondear el dispositivo evdev, actualizando el estado
interno dentro del objeto. También le permite registrar controladores de botones a los
que se llamará, centros de control, zonas activas (regiones en el rango del eje que se
fijan a 1,0 o -1,0) y zonas muertas (regiones cerca del punto central que se fijan a 0,0).

A modo de ejemplo, el siguiente código se conectará al controlador (obtendrás una


excepción si no tienes uno conectado) e imprimirá los valores de los dos sticks
analógicos:

desde triangula.input importar SixAxis , SixAxisResource

# Controlador de botones, se vinculará al botón cuadrado más adelante.


Controlador def ( botón ): imprime 'Botón {} presionado' . formato ( botón )

# Obtenga un joystick, esto fallará a menos que el controlador SixAxis esté emparejado
y activo
# El argumento bind_defaults especifica que debemos vincular acciones a los botones
SELECT e START para
# centrar el controlador y restablecer la calibración respectivamente.
con SixAxisResource ( bind_defaults = True ) como joystick :

20
# Registre un controlador de botón para el
joystick de botón cuadrado . Register_button_handler ( controlador , SixAxis .
BUTTON_SQUARE )
mientras 1 :
# Lea los ejes x e y del joystick izquierdo, el joystick derecho tiene los ejes 2 y 3
x = joystick . ejes [ 0 ] . valor_corregido ()
y = palanca de mando . ejes [ 1 ] . valor_corregido ()
imprimir ( x , y )
Le invitamos a adquirir las bibliotecas de Triangula, se cargan en PyPi con regularidad
(obténgalas con 'pip install triangula') o desde github. En cualquier caso, primero
necesitarás instalar un paquete adicional, sin el cual el módulo evdev no se compilará:

pi@raspberrypi ~ $ sudo apt-get install libpython2.7-dev


Ahora puede obtener el código de Triangula desde github y compilarlo para adquirir el
módulo triangula.input, luego puede usarlo en su propio código (no hay nada
particularmente específico de Triangula en él)

pi@raspberrypi ~ $ git clone git@github.com:basebot/triangula.git


pi@raspberrypi ~ $ cd triangula/src/python
pi@raspberrypi ~/triangula/src/python python setup.py desarrollar
Esto configurará las bibliotecas en modo de desarrollo, creando enlaces simbólicos en su
instalación de Python (supongo que está utilizando un entorno virtual, porque debería
hacerlo; si no, necesitará ejecutar algunos de estos comandos como root)

LA ESTRUCTURA DE UNA PROGRAMACIÓN EN EL ENTORNO DE PYTHON

21
4.1. Estructura de un programa

Un programa de Python se construye a partir de bloques de código. Un block es una parte


del texto del programa Python que se ejecuta como una unidad. Los siguientes son
bloques: un módulo, un cuerpo de función y una definición de clase. Cada comando
escrito de forma interactiva es un bloque. Un archivo de secuencia de comandos (un
archivo proporcionado como entrada estándar al intérprete o especificado como un
argumento de línea de comando para el intérprete) es un bloque de código. Un comando
de secuencia de comandos (un comando especificado en la línea de comandos del
intérprete con la opción: -c) es un bloque de código. Un módulo que se ejecuta como un
script de nivel superior (como módulo __main__) desde la línea de comando usando un
argumento -m también es un bloque de código. El argumento de cadena pasado a las la
ejecución una vez que el bloque de código se haya completado.

4.2. Nombres y vínculos


4.2.1. Vinculación de nombres

Los Names refieren a objetos. Los nombres se introducen por las operaciones de
vinculación de nombre (name binding operations).

Las siguientes construcciones enlazan nombres:

 parámetros formales de las funciones,


 definiciones de clase,
 definiciones de funciones,
 expresiones de asignación,
 targets que son identificadores si aparecen en una asignación:
o cabecera del bucle for,
o después de as en una declaración with, cláusula except, cláusula except*, o
en el patrón as en la concordancia de patrones estructurales,
o en un patrón de captura en la concordancia de patrones estructurales
 declaraciones import.

La declaración import de la forma from ... import * vincula todos los nombres definidos en
el módulo importado, excepto los que empiezan por guión bajo. Esta forma sólo puede.
utilizarse a nivel de módulo.Un objetivo que aparece en una sentencia del también se
considera vinculado para este propósito (aunque la semántica real es desvincular
hombre).

Cada declaración de asignación o importación ocurre dentro de un bloque determinado


por una definición de clase o de función, o a nivel de módulo (el bloque de código de
máximo nivel).

22
Si un nombre está vinculado en un bloque, es una variable local en ese bloque, salvo que
sea declarado como nonlocal o global. Si un nombre está vinculado a nivel de módulo, es
una variable global. (Las variables del bloque de código del módulo son locales y globales.)
Si una variable se una en un bloque de código pero no está definida ahí, es una free
variable.

Cada ocurrencia de un nombre en el texto del programa se refiere al binding de ese


nombre, establecido por las siguientes reglas de resolución de nombres.

4.2.2. Resolución de nombres

Un scope define la visibilidad de un nombre en un bloque. Si una variable local se define


en un bloque, su ámbito incluye ese bloque. Si la definición ocurre en un bloque de
función, el ámbito se extiende a cualquier bloque contenido en el bloque en donde está la
definición, a menos que uno de los bloques contenidos introduzca un vínculo diferente
para el nombre.

Cuando un nombre es utilizado en un bloque de código, se resuelve utilizando el ámbito


de cierre más cercano. El conjunto de todos esos ámbitos visibles para un bloque de
código se llama el environment del bloque.

Cuando un nombre no se encuentra, se lanza una excepción NameError. Si el ámbito


actual es una función, y el nombre se refiere a una variable local que todavía no ha sido
vinculada a un valor en el punto en el que nombre es utilizado, se lanza una
excepción UnboundLocalError. UnboundLocalError es una subclase de NameError.

If a name binding operation occurs anywhere within a code block, all uses of the name
within the block are treated as references to the current block. This can lead to errors
when a name is used within a block before it is bound. This rule is subtle. Python lacks
declarations and allows name binding operations to occur anywhere within a code block.
The local variables of a code block can be determined by scanning the entire text of the
block for name binding operations. See the FAQ entry on UnboundLocalError for
examples.

Si la declaración global ocurre dentro de un bloque, todos los usos del nombre
especificado en la declaración se refieren a la vinculación que ese nombre tiene en el
espacio de nombres (namespace) de nivel superior. Los nombres se resuelven en el
espacio de nombres de nivel superior buscando en el espacio de nombres global, es decir,
el espacio de nombres del módulo que contiene el bloque de código, y en el espacio de
nombres incorporado, el namespace del módulo builtins. La búsqueda se realiza primero
en el espacio de nombres global. Si el nombre no se encuentra ahí, se busca en el espacio
de nombres incorporado (builtins namespace). La declaración global debe preceder a
todos los usos del nombre.

23
La declaración global tiene el mismo ámbito que una operación de vinculación de nombre
en el mismo bloque. Si el ámbito de cierre más cercano para una variable libre contiene
una declaración global, se trata a la variable libre como global.

La declaración nonlocal causa que los nombre correspondientes se refieran a variables


previamente vinculadas en el ámbito de la función de cierre más cercano. Se lanza
un SyntaxError en tiempo de compilación si el nombre dado no existe en ningún ámbito
de las funciones dentro de las cuales está.

El espacio de nombres (namespace) para un módulo se crea automáticamente la primera


vez que se importa el módulo. El módulo principal de un script siempre se
llama __main__.

Los bloques de definición de clase y los argumentos para exec() y eval() son especiales en
el contexto de la resolución de nombres. Una definición de clase es una declaración
ejecutable que puede usar y definir nombres. Estas referencias siguen las reglas normales
para la resolución de nombres con la excepción de que se buscan las variables locales no
vinculadas en el espacio de nombres global. El espacio de nombres de la definición de
clase se vuelve el diccionario de atributos de la clase. El ámbito de nombres definido en un
bloque de clase está limitado a dicho bloque; no se extiende a los bloques de código de los
métodos. Esto incluye las comprensiones y las expresiones generadoras (generator
expressions), dado que están implementadas usando el alcance de función. Esto implica
que lo siguiente fallará:

class A:
a = 42
b = list(a + i for i in range(10))
4.2.3. Integraciones y ejecución restringida
Detalles de implementación de CPython: Los usuarios no deberían tocar __builtins__; es
un detalle de la implementación en sentido estricto. Los usuarios que quieran
sobreescribir valores en los espacios de nombres incorporados deberían usar import con
el módulo builtins y modificar sus atributos de un modo adecuado.

El espacio de nombres incorporado (builtin namespace) asociado a la ejecución de un


bloque de código es encontrado buscando el nombre __builtins__ en su espacio de
nombres global; debería ser un diccionario o un módulo (en este último caso, se usa el
diccionario del módulo). Por defecto, en el módulo __main__, __builtins__ es el
módulo builtins. En cualquier otro módulo, __builtins__ es un alias para el diccionario del
propio módulo builtins.

24
4.2.4. Interacción con funcionalidades dinámicas

La resolución de variables libres sucede en tiempo de ejecución, no en tiempo de


compilación. Esto significa que el siguiente código va a mostrar 42:

i = 10
def f():
print(i)
i = 42
f()

Las funciones eval() y exec() no tienen acceso al entorno completo para resolver nombres.
Los nombres pueden resolverse en los espacios de nombres locales y globales de la
persona que llama. Las variables libres no se resuelven en el espacio de nombres adjunto
más cercano, sino en el espacio de nombres global. 1 Las funciones exec() y eval() tienen
argumentos opcionales para anular el espacio de nombres global y local. Si solo se
especifica un espacio de nombres, se usa para ambos.

4.3. Excepciones

Las excepciones son un medio para salir del flujo de control normal de un bloque de
código, para gestionar errores u otras condiciones excepcionales. Una excepción
es lanzada (raised) en el momento en que se detecta el error; puede
ser gestionada (handled) por el bloque de código que la rodea o por cualquier bloque de
código que directa o indirectamente ha invocado al bloque de código en el que ocurrió el
error.

El intérprete Python lanza una excepción cuando detecta un error en tiempo de ejecución
(como una división por cero). Un programa Python también puede lanzar una excepción
explícitamente, con la declaración raise. Los gestores de excepciones se especifican con la
declaración try … except. La cláusula finally de tales declaraciones puede utilizarse para
especificar código de limpieza que no es el que gestiona la excepción, sino que se
ejecutará en cualquier caso, tanto cuando la excepción ha ocurrido en el código que la
precede, como cuando esto no ha sucedido.

Python usa el modelo de gestión de errores de «terminación» (»termination»): un gestor


de excepción puede descubrir qué sucedió y continuar la ejecución en un nivel exterior,
pero no puede reparar la causa del error y reintentar la operación que ha fallado (excepto
que se reingrese al trozo de código fallido desde su inicio).

Cuando una excepción no está gestionada en absoluto, el intérprete termina la ejecución


del programa, o retorna a su bucle principal interactivo. En cualquier caso, imprime un
seguimiento de pila, excepto cuando la excepción es SystemExit.

25
Exceptions are identified by class instances. The except clause is selected depending on
the class of the instance: it must reference the class of the instance or a non-virtual base
class thereof. The instance can be received by the handler and can carry additional
information about the exceptional condition.

26
DECLARACIÓN DE UNA VARIABLE DE PYHON
Las variables están presentes en todo lenguaje de programación. Python no es la excepción.
Así que vamos a ver lo que son, como inicializarlas, darles valores, etc. Para declarar o crear
una variable en Python, solo tienes que darle un nombre, no necesita utilizar una palabra
reservada ni nada por el estilo.Para inicializar una variable (darle un valor inicial cuando la
creamos), hay que utilizar el operador de asignación ("=").El dato que le pongamos después
del símbolo de asignación, es el que va a guardar la variable y podremos utilizar a lo largo del
programa.En esta ocasión quiero guardar un texto, a partir de ahora, string o cadena de
caracteres (valor que puede contener letras, números y símbolos). Para almacenar strings en
una variable, lo haremos con unas comillas simples (' ') o dobles (" ").

mensaje = "Mensaje en una variable."


Aunque ejecutes este programa, el mensaje no aparecerá en la consola. Puedes mostrarlo en
ella gracias a print(). Solo tienes que llamar a la variable con su nombre allá donde la quieras
utilizar.

mensaje = "Mensaje en una variable."

print(mensaje)
Reasignar valores a variables, no podía ser más fácil en Python. Tan solo tienes que volver a
nombrar a la variable y asignarle otro valor diferente. Este reemplazará el anterior en la línea
de código que lo escribamos.

mensaje = "Mensaje en una variable."

mensaje = 10

print(mensaje)

27
SENTENCIAS DE ENTRADA/SALIDA DE PYHON
Cuando sabemos como escribir en ficheros y solicitar información al usuario, la
pregunta que nos podemos hacer es, ¿Cómo hace Python para conectar pantalla y
teclado?. La respuesta es, a través de los flujos de entrada y salida de datos. Estos flujos
son los mecanismos que nos permiten realizar operaciones de entrada y salida en
nuestros programas.

Teclado (entrada|input) → Programa → Pantalla (salida|output)

La mayoría de los Sistemas Operativos ofrecen tres flujos de entrada y salida de datos
por defecto, cada uno de ellos para un propósito específico.

 Entrada de datos estándar (stdin), es un canal de comunicación entre el programa


y la entrada de datos (normalmente en formato texto desde un teclado).
 Salida de datos estándar (stdout), es un canal de comunicación entre el programa
y la salida de datos (normalmente en formato texto a través de una pantalla).
 Salida de Errores (stderr), es un canal de comunicación para mostrar errores y
mensajes de diagnóstico de un programa (normalmente en formato texto a
través de la pantalla).

Cuando usamos la función input() estamos usando el canal de comunicación de entrada


de datos STDIN. La función print() es un claro ejemplo de un flujo de datos STDOUT. Si
ejecutas un script escrito en Python y recibes un error, ese error probablemente es
impreso usando el canal de comunicación STDERR.

Variables de entorno

Cuando ejecutamos una aplicación desde un terminal en un Sistema Operativo Linux, ya


sea desde una máquina local o remota, la aplicación que se encarga de leer y ejecutar
todos los comandos se llama Shell.

El Shell es una interfaz de línea de comandos, que nos permite interactuar con el
Sistema Operativo. El Shell más usado actualmente en Linux es Bash (GNU Bash) y otros
no menos importantes son zsh (Z Shell) o fish (Friendly interactive shell

Los programas escritos en Python son ejecutados en entorno de línea de


comandos Shell y todas las variables establecidas en ese entorno
podrán ser utilizadas en nuestros scripts. Saber cómo cambiar estas
variables, nos será útil para alterar el comportamiento de los
programas.

1 $ env

28
2 XDG_SESSION_ID=2947
3 TERM=xterm
4 SHELL=/bin/bash
5 SSH_CLIENT=xx.xxx.xx.xx 41024 22
6 SSH_TTY=/dev/pts/0
7 USER=xxxx
8 MAIL=/var/mail/ejemplo.com
9 PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games
10 PWD=/var/www/vhosts/ejemplo.com
11 LANG=en_US.UTF-8
12 SHLVL=1
13 HOME=/var/www/vhosts/ejemplo.com
14 LOGNAME=ejemplo.com
15 SSH_CONNECTION=xx.xx.xx.xx 41024 xx.xx.xx.xx 22
16 XDG_RUNTIME_DIR=/run/user/10002
17 _=/usr/bin/env
La variable PATH es una variable de entorno muy importante. Podemos
mostrar su contenido usando el comando echo (comando para imprimir
texto en el Shell de Linux), seguido del nombre de la variable precedido
del símbolo dólar.

1$ echo $PATH
2/home/user/.local/bin:/home/user/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/
usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
El Shell usa la variable de entorno PATH para saber dónde buscar los
ficheros ejecutables y así poder llamarlos desde el directorio donde nos
encontremos. El contenido de todas estas variables, podemos leerlos
desde nuestros scripts escritos en Python. Para ello podemos usar la
función environ() del módulo OS de Python. Veamos un ejemplo desde
el intérprete de Python.

1>>> import os

29
2 >>> print("Directorio de trabajo " + os.environ.get("HOME", ""))
3 >>> print("Shell " + os.environ.get("SHELL", ""))
4
5 Directorio de trabajo /home/jose
6 Shell /bin/bash
Si necesitamos definir una nueva variable de entorno desde línea de
comandos, usamos el comando export.

 EXPRESIONES ARITMÉTICA , LOGIGAS, Y RELACIONES


DE PYHON
Estos son los diferentes tipos de operadores en Python:

1. Operadores aritméticos

2. Operadores relacionales

3. Operadores Bit a Bit

4. Operadores de asignación

30
5. Operadores lógicos

6. Operadores de pertenencia

7. Operadores de identidad
Operadores Aritméticos
Un operador aritmético toma dos operandos como entrada, realiza un cálculo y devuelve
el resultado.

Considera la expresión, “a = 2 + 3”. Aquí, 2 y 3 son los operandos y + es el operador


aritmético. El resultado de la operación se almacena en la variable a.
OPERADOR DESCRIPCIÓN USO

+ Realiza Adición entre los operandos 12 + 3 = 15

- Realiza Substracción entre los operandos 12 - 3 = 9

* Realiza Multiplicación entre los operandos 12 * 3 = 36

/ Realiza División entre los operandos 12 / 3 = 4

% Realiza un módulo entre los operandos 16 % 3 = 1

** Realiza la potencia de los operandos 12 ** 3 = 1728

// Realiza la división con resultado de número entero 18 // 5 = 3

Nota: Para obtener el resultado en tipo flotante, uno de los operandos también debe ser
de tipo flotante.

Operadores Relacionales
Un operador relacional se emplea para comparar y establecer la relación entre ellos.
Devuelve un valor booleano (true o false) basado en la condición.

OPERADOR DESCRIPCIÓN USO

Devuelve True si el operador de la izquierda es 12 > 3 devuelve


> mayor que el operador de la derecha True

< Devuelve True si el operador de la derecha es mayor 12 < 3 devuelve

31
OPERADOR DESCRIPCIÓN USO

que el operador de la izquierda False

12 == 3
== Devuelve True si ambos operandos son iguales devuelve False

Devuelve True si el operador de la izquierda es 12 >= 3


>= mayor o igual que el operador de la derecha devuelve True

Devuelve True si el operador de la derecha es mayor 12 <= 3


<= o igual que el operador de la izquierda devuelve False

12 != 3
!= Devuelve True si ambos operandos no son iguales devuelve True

Operadores Bit a Bit


Un operador bit a bit realiza operaciones en los operandos bit a bit.

Consideremos a = 2 (en binario = 10) y b = 3 (en binario = 11) para los siguientes casos.

OPERADOR DESCRIPCIÓN USO

Realiza bit a bit la operación AND en los a & b = 2 (Binario: 10


& operandos & 11 = 10)

Realiza bit a bit la operación OR en los a | b = 3 (Binario: 10


| operandos | 11 = 11)

Realiza bit a bit la operación XOR en los a ^ b = 1 (Binario: 10


^ operandos ^ 11 = 01)

~a = -3 (Binario:
Realiza bit a bit la operación NOT bit a bit. ~(00000010) =
~ Invierte cada bit en el operando (11111101))

>> Realiza un desplazamiento a la derecha bit a a >> b = 0 (Binario:


bit. Desplaza los bits del operador de la 00000010 >>
izquierda a la derecha tantos bits como indica 00000011 = 0)

32
OPERADOR DESCRIPCIÓN USO

el operador de la derecha

Realiza un desplazamiento a la izquierda bit a a << b = 16 (Binario:


bit. Desplaza los bits del operando de la 00000010 <<
izquierda a la izquierda tantos bits como 00000011 =
<< especifique el operador de la derecha 00001000)

Operadores de Asignación
Se utiliza un operador de asignación para asignar valores a una variable. Esto
generalmente se combina con otros operadores (como aritmética, bit a bit) donde la
operación se realiza en los operandos y el resultado se asigna al operando izquierdo.

Considera los siguientes ejemplos,

a = 18. Aquí = es un operador de asignación, y el resultado se almacena en la variable a.


a + = 10. Aquí += es un operador de asignación, y el resultado se almacena en la variable a.
Es lo mismo que a = a + 10.
OPERADOR DESCRIPCIÓN

= a = 5. El valor 5 es asignado a la variable a

+= a += 5 es equivalente a a = a + 5

-= a -= 5 es equivalente a a = a - 5

*= a *= 3 es equivalente a a = a * 3

/= a /= 3 es equivalente a a = a / 3

%= a %= 3 es equivalente a a = a % 3

**= a **= 3 es equivalente a a = a ** 3

//= a //= 3 es equivalente a a = a // 3

&= a &= 3 es equivalente a a = a & 3

|= a |= 3 es equivalente a a = a | 3

33
OPERADOR DESCRIPCIÓN

^= a ^= 3 es equivalente a a = a ^ 3

>>= a >>= 3 es equivalente a a = a >> 3

<<= a <<= 3 es equivalente a a = a << 3

Operadores Lógicos
Se utiliza un operador lógico para tomar una decisión basada en múltiples condiciones. Los
operadores lógicos utilizados en Python son and, or y not.
OPERADOR DESCRIPCIÓN USO

a and
and Devuelve True si ambos operandos son True b

or Devuelve True si alguno de los operandos es True a or b

not Devuelve True si alguno de los operandos False not a

Operadores de Pertenencia
Un operador de pertenencia se emplea para identificar pertenencia en alguna secuencia
(listas, strings, tuplas).

in y not in son operadores de pertenencia.


in devuelve True si el valor especificado se encuentra en la secuencia. En caso contrario
devuelve False.
not in devuelve True si el valor especificado no se encuentra en la secuencia. En caso
contrario devuelve False.
Hua = [1,2,3,4,5]

#Esta 3 en la lista a?
print 3 in a # Muestra True

#No está 12 en la lista a?


print 12 not in a # Muestra True

34
str = "Hello World"

#Contiene World el string str?


print "World" in str # Muestra True

#Contiene world el string str? (nota: distingue mayúsculas y minúsculas)


print "world" in str # Muestra False

print "code" not in str # Muestra True


Operadores de Identidad
Un operador de identidad se emplea para comprobar si dos variables emplean la misma
ubicación en memoria.

is y is not son operadores de identidad.


is devuelve True si los operandos se refieren al mismo objeto. En caso contrario devuelve
False.
is not devuelve True si los operandos no se refieren al mismo objeto. En caso contrario
devuelve False.
Ten en cuenta que dos valores, cuando son iguales, no implica necesariamente que sean
idénticos.

a=3
b=3
c=4
print a is b # muestra True
print a is not b # muestra False
print a is not c # muestra True

x=1
y=x
z=y
print z is 1 # muestra True
print z is x # muestra True

str1 = "FreeCodeCamp"
str2 = "FreeCodeCamp"

35
print str1 is str2 # muestra True
print "Code" is str2 # muestra False

a = [10,20,30]
b = [10,20,30]

print a is b # muestra False (ya que las listas son objetos mutables en Python)

CONCLUSIÓN DE NOSOTROS

Python ha sido peldaños con el pasa de los años , ganando una gran y popularidad
haciendo temblar aquellos lenguajes que parecían que si se iban a quedar para siempre
es un lenguaje fácil y aprender a idear aquellos programadores que se están iniciando
tienen una gran variedad y sin fin de uso en cuenta con su comunidad muy activa lo

36
garantizan en un qué lenguaje se mantendrá actualizado con el paso de tiempo y que
sigue las nuevas librerías que nos nos permitirán ahorrar más tiempo y trabajo.

https://es.linkedin.com/pulse/guido-van-rossum-la-historia-del-creador-de-python-y-
quiroga-salda%C3%B1a#:~:text=Guido%20van%20Rossum%20es%20un,del
%20lenguaje%20de%20programaci%C3%B3n%20Python.
https://aws.amazon.com/es/what-is/python/#:~:text=Python%20es%20un
%20lenguaje%20de,ejecutar%20en%20muchas%20plataformas%20diferentes.

https://www.dongee.com/tutoriales/para-que-sirve-python/

https://keepcoding.io/blog/ventajas-y-desventajas-de-python/

https://openwebinars-net.cdn.ampproject.org/v/s/openwebinars.net/amp/blog/que-es-python/?
amp_gsa=1&amp_js_v=a9&usqp=mq331AQIUAKwASCAAgM%3D#amp_tf=De

37
%20%251%24s&aoh=16953451303630&referrer=https%3A%2F
%2Fwww.google.com&ampshare=https%3A%2F%2Fopenwebinars.net%2Fblog%2Fque-es-python
%2F

https://learn.microsoft.com/es-es/windows/python/beginners

https://docs.python.org/es/3/tutorial/

https://docs.python.org/es/3/reference/executionmodel.html

38

También podría gustarte