# Introducción al Python

Esta es **una muy breve introducción al Python** como recordatorio de algunas instrucciones si ya has utilizado este lenguaje. Si es la primera vez, te recomendamos que visites nuestro curso [**PYTHON PARA TODOS Python for everybody**](https://libros.catedu.es/books/python-for-everybody) por Charles R. Severance licencia CC-BY-NCSA que empieza desde cero.

##### **Lenguajes, intérpretes y compiladores** {{@13364#bkmrk-python-es-un-lenguaj}} {{@13364#bkmrk-la-cpu-entiende-un-i}} {{@13364#bkmrk-el-lenguaje-de-m%C3%A1qui}} {{@13364#bkmrk-estos-traductores-de}} {{@13364#bkmrk-un%C2%A0int%C3%A9rprete%C2%A0lee-el}} ```python >>> x = 6 >>> print(x) 6 >>> y = x * 7 >>> print(y) 42 >>> ``` {{@13364#bkmrk-est%C3%A1-en-la-naturalez}} ##### **Variables** Las variables son como cajas que puedes meter valores. Y los valores pueden ser de varios **tipos** : - **int** si son enteros - **float** si tienen decimales - **binario**Deben comenzar por 0b. Por ejemplo: 0b110, 0b11 - **string** son frases, son "***cadenas***" de caracteres entre " - **bool** Solamente hay dos literales booleanos True o False - **lista** Se pueden declarar variables que son conjuntos por ejemplo Colores = \["verde", "rojo", "naranja" \] Para crear una variable puedes usar cualquier palabra, x, y, z o Nombre\_alumno ... pero algunas palabras no puedes usar, [ver](https://libros.catedu.es/books/python-for-everybody/page/2-variables) Para visualizar variables puedes usar la **instrucción** **print** poniendo entre paréntesis el valor o variable que quieres visualizar. En la siguiente ventana puedes dar al botón *play* y ver el resultado

Modifica los valores como quieras, es un **intérprete**, juega y dale al play para ver el resultado

Como puedes ver se ha introducido un operador el + que realiza la suma del valor de x original (43) y se le incrementa una unidad resultando en la impresión un 44. ##### **Cadenas** Cadenas son secuencias de caracteres, por ejemplo la palabra "banana" [![2025-04-05 09_29_39-Editing Page 6 Cadenas _ Librería CATEDU.png](https://libros.catedu.es/uploads/images/gallery/2025-04/scaled-1680-/2025-04-05-09-29-39-editing-page-6-cadenas-libreria-catedu.png) fuente ](https://libros.catedu.es/uploads/images/gallery/2025-04/2025-04-05-09-29-39-editing-page-6-cadenas-libreria-catedu.png)['Python for Everybody'](https://www.py4e.com/book)[ por ](https://libros.catedu.es/uploads/images/gallery/2025-04/2025-04-05-09-29-39-editing-page-6-cadenas-libreria-catedu.png)[Charles R. Severance](http://www.dr-chuck.com/)[ ](https://libros.catedu.es/uploads/images/gallery/2025-04/2025-04-05-09-29-39-editing-page-6-cadenas-libreria-catedu.png) Se puede obtener su longitud con la función len, o obtener un carácter ... ##### **Operadores** *Este apartado de operadores es adaptado de Federico Coca [Guia de Trabajo de Microbit ](https://fgcoca.github.io/Guia-de-trabajo-para-microbit/guias/intro/)CC-BY-SA* Los **operadores aritméticos** se utilizan para realizar operaciones matemáticas como sumas, restas, multiplicaciones, etc.
OperadorDescripciónEjemplo
+Suma o concatenación en textos`5+3=8`, `"Hola" + "Mundo" = "Hola Mundo`
-Diferencia`6-3=3`
\*Multiplicación`3*3=9`
/División`6/2=3`
//Parte entera de un cociente`10//3=3`
%Resto de un cociente`10%3=1`
\*\*Potenciación`5**2=25`
Los **operadores de asignación** se utilizan para asignar valores a variables.
OperadorDescripciónEjemplo
=Asignación`x=4`, `a = a + 1`
+=Suma y asignación`x+=1` equivale a `x = x + 1`
-=Diferencia y asignación`x-=1` equivale a `x = x - 1`
\*=Multiplicación y asignación`x*=3` equivale a `x = x * 3`
/=División y asignación`x/=3` equivale a `x = x / 3`
%=Asignación de restos`x%=3` equivale a `x = x % 3`
\*\*=Asignación de exponentes`x**=3` equivale a `x = x ** 3`
Los **operadores de comparación** comparan dos valores/variables y devuelven un resultado booleano: Verdadero o Falso `True` o `False`.
OperadorDescripciónEjemplo
==Igual a`2==3` retorna `False`
!=Distinto de`2!=3` retorna `True`
<Menor que`2<3` retorna `True`
>Mayor que`2>3` retorna `False`
<=Menor o igual que`2<=3` retorna `True`
>=Mayor o igual que`2>=3` retorna `False`
Los **operadores lógicos** se utilizan para comprobar si una expresión es Verdadera o Falsa. Se utilizan en la toma de decisiones.
OperadorDescripciónEjemplo
andAND lógica`a and b #True si a y b son ciertos`
orOR lógica`a or b #True si a o b son ciertos`
notNOT lógica`not a #True si el operador a es falso`
inpertenenciaDevuelve True si pertenece
no intno pertenenciaDevuelve True si no pertenece
isidentidadDevuelve True si son iguales
is notno identidadDevuelve True si no son inguales
Los **operadores bit a bit** o bitwise actúan sobre los operandos como si fueran cadenas de dígitos binarios. Operan bit a bit:
OperadorDescripciónEjemplo
&AND bit a bit`5&6 # 101 & 110 = 110 = 4`
|OR bit a bit`5 \| 6 # 101 \| 110 = 111 = 7`
~NOT bit a bit`~3 # ~011 = 100 = -4`
^XOR bit a bit`5^3 # 101^011 = 110 = 6`
<<Desplazamiento izquierda`4<<1 # 100 << 1 = 1000 = 8`
>>Desplazamiento derecha`4 >> 1 # 100 >> 1 = 010 = 2`

Prueba, juega con este código:

**Comentarios en Python** Una sola línea : Escribiendo el símbolo almohadilla (#) delante del comentario. Multilínea: Escribiendo triple comillas dobles (“””) al principio y al final del comentario.

##### **Entradas de teclado** Ya hemos visto salidas por pantalla con **print**, pero ahora con input puede leer variables del teclado, esto es mejor experimentarlo que leerlo : Fíjate que hay que poner las líneas **x = float (x)** e **y = float(y)** para convertirlos a números decimales, en caso contrario las interpreta string y no puede multiplicar en Resultado, pero en el siguiente ejemplo **no es necesario en la variable cel** (celsius) pues se multiplica por números decimales 32.0 5.0 y 9.0

**try** y **except** son dos funciones que son *un seguro para el programador* por si el usuario en vez de teclear un número, mete un string o carácter

**La sangría es importante en Python** La sangría se refiere a los espacios al comienzo de una línea de código. Mientras que en otros lenguajes de programación la sangría en el código es solo para facilitar la lectura, la sangría en Python es muy importante ya que se usa para indicar un bloque de código.

##### **Condicionales** Las instrucciones **if: else:** son las que nos permiten realizar operaciones según las condiciones puestas. *Ojo con la sangría*

**\\n** es un carácter especial que significa "Salto de página"

##### **Bucles** - **while** ejecuta lo contenido en la sangría mientras sea verdadero la condición - **for** ejecuta lo contenido en la sangría mientras y va recorriendo la variable dentro del rango creado Para verlo mejor vamos a ver estos ejemplos - EJEMPLO BUCLE WHILE - mientras n sea positivo va ejecutando : imprime n y lo decrementa - al decrementar llega un momento que deja de ser positivo y finaliza el bucle - EJEMPLO BUCLE WHILE INFINITO - Es muy típico en robótica, todo el rato hace el bucle (en robótica para que lea los sensores y realice cosas en los actuadores) pero este ejemplo no esta en un robot sino en tu pc y no queremos que se quede "colgado" luego al teclear "fin" acaba gracias a la instrucción **break** - Fíjate que hay una instrucción **continue** para que pase a la siguiente iteración provocando que no imprime lo tecleado - EJEMPLO BUCLE FOR FRIENDS - Va recorriendo la variable friend dentro del cojunto lista friends - como puedes ver la diferencia entre for y while es que for además recorre la variable - EJEMPLO BUCLE FOR - mientras n este en el rango de 0 a 5 se ejecuta Venga pruébalo !!! ##### **Funciones** No vamos a entrar en detalle, pero observa el siguiente código - **FUNCIONES PREDEFINIDAS** Si observas, la primera línea llama a importar una librería externa, **import math** donde math es un fichero que tienen funciones predefinidas, vamos a utilizar una de ellas, la raiz cuadrada **sqrt** luego para llamar a esa función que esta definida dentro de math se hace con la instrucción **math.sqrt** - **FUNCIONES DEFINIDAS POR TI** em este caso, se utiliza la palabra **def** para crear una función, que le vamos a pasar tres argumentos a, b y c y para finalizar la función usamos **return** para devolver el valor que queremos obtener #### **Para saber más de Python**
CURSO PYTHON FOR EVERYBODY en español[ver](https://libros.catedu.es/books/python-for-everybody)
Curso completo de Python 222pag pdf (\*)[Descargar](https://drive.google.com/file/d/1AQc6nuDTxFdC63b1x3weIW3OmedlBcug/view?usp=drive_link)
Curso completo de Python 422pag (\*)[Descargar](https://drive.google.com/file/d/1pUxzeBBbpskfIHHtlH68zrOPEIFKR_vE/view?usp=sharing)
Curso completo de Python desde 0 (\*)[Ver](http://peremanelv.com/Pro_Python/CursocompletoPython.pdf)
Curso de Python desde 0 (\*)[Ver](http://peremanelv.com/Pro_Python/CursoPythonDesde0.pdf)
Manual de referencia Python (\*)[Ver](http://peremanelv.com/Pro_Python/MunualPython.pdf)
Programación en Python (\*)[Ver](http://peremanelv.com/Pro_Python/CursoPythonDimas.pdf)
Trabajando con ficheros en Python (\*)[Ver](http://peremanelv.com/Pro_Python/ArchivosTextoConPython.pdf)
Programación orientada a objeto en Python (\*)[Ver](http://peremanelv.com/Pro_Python/PythonPOO.pdf)
un manual para aquellos usuarios con previos conocimientos de Python, como la programación modular y orientada a objetos. También algunos conocimientos de las librerías **tkinter** (Para crear interfaces gráficos y **SQlite3** (para gestionar bases de datos). (\*) [Descargar](https://drive.google.com/file/d/16hvyTSTBs8aFeVvhF-MCQQmKlPP2pYo7/view?usp=sharing)
(\*) Agradecimientos a Pere Manel [http://peremanelv.com](http://peremanelv.com)