Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% encontró este documento útil (0 votos)
347 vistas

Tutorial Python PDF

Python es un lenguaje de programación de alto nivel popular utilizado en diversas áreas como la web, la ciencia y la inteligencia artificial. Este documento presenta conceptos básicos de Python como imprimir texto, realizar cálculos matemáticos, trabajar con números enteros y flotantes, usar cadenas y más. Se explican operaciones como suma, resta, multiplicación, división y exponenciación con ejemplos.

Cargado por

Victor López
Derechos de autor
© © All Rights Reserved
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
347 vistas

Tutorial Python PDF

Python es un lenguaje de programación de alto nivel popular utilizado en diversas áreas como la web, la ciencia y la inteligencia artificial. Este documento presenta conceptos básicos de Python como imprimir texto, realizar cálculos matemáticos, trabajar con números enteros y flotantes, usar cadenas y más. Se explican operaciones como suma, resta, multiplicación, división y exponenciación con ejemplos.

Cargado por

Victor López
Derechos de autor
© © All Rights Reserved
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 31

Tutorial de Python 3

1 Conceptos Básicos
1.1 ¡Bienvenido a Python!
Python es un lenguaje de programación de alto nivel, con aplicaciones en numerosas áreas,
incluyendo programación web, scripting, computo científico e inteligencia artificial.

Es muy popular y utilizado por organizaciones como Google, NASA, la CIA y Disney.

Python es procesado a tiempo de ejecución por el intérprete. No hay necesidad de


compilar tu programa antes de ejecutarlo.

Python es un:

• Lenguaje de programación
• Conjunto de herramientas de edición.
• Ambiente de desarrollo
1.2 ¡Bienvenido a Python!
Las tres versiones principales de Python son 1.x, 2.x y 3.x. Estos se subdividen en versiones menores,
tales como 2.7 y 3.3.
El código escrito para Python 3.x está garantizado para funcionar en todas las versiones futuras.
Actualmente se utilizan Python versión 2.x y 3.x.
Este curso cubre Python 3.x, pero no es difícil cambiar de una versión a otra.

Python tiene unas cuantas implementaciones diferentes, escritas en varios idiomas.


La versión utilizada en este curso, CPython, es la más popular con diferencia.

Un intérprete es un programa que ejecuta scripts escritos en un lenguaje interpretado


como Python.

¿Cuál de esas declaraciones es cierta?

• El código de Python se debe compilar siempre


• Python 1.7 es la versión más utilizada
• CPython es una implementación de Python
1.3 Su primer programa
Comencemos creando un programa corto que muestre “¡Hello world!".

En Python, usamos la declaración de print para generar texto:

>>> print('Hello world!')


Hello world!

¡Felicidades! Has escrito tu primer programa.


Ejecute, guarde y comparta su código Python en nuestro Code Playground sin instalar
ningún software adicional.

Cuando use una computadora, deberá descargar e instalar Python desde www.python.org.

Tenga en cuenta el >>> en el código anterior. Son el símbolo del sistema de la consola de
Python. Python es un lenguaje interpretado, lo que significa que cada línea se ejecuta a
medida que se ingresa. Python también incluye IDLE, el entorno de desarrollo integrado,
que incluye herramientas para escribir y depurar programas completos.

Complete los espacios en blanco para imprimir "Hi".

>>>print(“Hi”);
1.4 Imprimir texto
La declaración de print también se puede utilizar para generar varias líneas de texto.

Por ejemplo:

>>> print('Hello world!')


Hello world!
>>> print('Hello world!')
Hello world!
>>> print('Spam and eggs...')
Spam and eggs...

El código de Python a menudo contiene referencias al grupo de comedia Monty Python.


Esta es la razón por la cual las palabras "spam" y "eggs" a menudo se usan como variables
de marcador de posición en Python donde "foo" y "bar" se usarían en otros lenguajes de
programación.

Complete el espacio en blanco para generar "ni ni ni".

>>> print('ni ni ni')


1.5 Operaciones simples
Python tiene la capacidad de realizar cálculos.
Ingrese un cálculo directamente en la consola de Python y generará la respuesta.

>>> 2 + 2
4
>>> 5 + 4 - 3
6

Los espacios alrededor de los signos más y menos aquí son opcionales (el código
funcionaría sin ellos), pero hacen que sea más fácil de leer.

¿Qué genera este código?

>>> 1 + 2 + 3
6

1.6 Operaciones simples


Python también lleva a cabo la multiplicación y división, usando un asterisco para indicar la
multiplicación y una diagonal para indicar la división.

Use paréntesis para determinar qué operaciones se realizan primero.

>>> 2 * (3 + 4)
14
>>> 10/2
5.0

El uso de una barra oblicua para dividir números produce un decimal (o flotante, como se
llama en la programación). Tendremos más información sobre las flotantes en una lección
posterior.

¿Qué opción genera este código?

>>> (4 + 8) / 2

• 6.0
• 8
• 6
1.7 Operaciones simples
El signo menos indica un número negativo.
Las operaciones se realizan en números negativos, al igual que en números positivos.

>>> -7
-7
>>> (-7 + 2) * (-4)
20

Los signos más también se pueden colocar delante de los números, pero esto no tiene
ningún efecto y se usa principalmente para enfatizar que un número es positivo para
aumentar la legibilidad del código.

Complete el espacio en blanco para corregir este código.

>>> ( -5 - 1) * 3
-18

1.8 Operaciones simples


Dividir por cero en Python produce un error, ya que no se puede calcular la respuesta.

>>> 11 / 0
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ZeroDivisionError: division by zero

En Python, la última línea de un mensaje de error indica el tipo de error.


¡Lea atentamente los mensajes de error, ya que a menudo le dicen cómo solucionar un
programa!

Arrastre y suelte la respuesta que causará un error ZeroDivisionError.

>>> (17 + 94) / (-5 + ___ )

• 0
• -5
• 5
1.9 Flotantes
Los flotantes se usan en Python para representar números que no son enteros.
Algunos ejemplos de números que se representan como flotantes son 0.5 y -7.8237591.
Se pueden crear directamente ingresando un número con un punto decimal, o usando operaciones
como la división en enteros. Los ceros adicionales al final del número se ignoran.

>>> 3/4
0.75
>>> 9.8765000
9.8765

Las computadoras no pueden almacenar flotantes perfectamente, de la misma manera


que no podemos escribir la expansión decimal completa de 1/3 (0.3333333333333333 ...).
Tenga esto en cuenta, porque a menudo conduce a errores exasperantes.

¿Cuál de estos no se almacenará como flotante?

• 7.0
• 2/4
• 7
1.10 Flotantes
Como viste anteriormente, dividir dos enteros produce un flotante.
Un flotante también se produce al ejecutar una operación en dos flotantes, o en un flotante y un
entero.

>>> 8 / 2
4.0
>>> 6 * 7.0
42.0
>>> 4 + 1.65
5.65
Se puede agregar un flotante a un entero, porque Python convierte silenciosamente el
entero en un flotante. Sin embargo, esta conversión implícita es la excepción, más bien la
regla en Python: por lo general, debe convertir los valores manualmente si desea operar
con ellos.

Complete el espacio en blanco con la salida de este código.

>>> 1 + 2 + 3 + 4.0 + 5
15.0

1.11 Exponenciación
Además de la suma, la resta, la multiplicación y la división, Python también admite la
exponenciación, que es elevar un número a la potencia de otro. Esta operación se realiza utilizando
dos asteriscos.

>>> 2 ** 5
32
>>> 9 ** (1/2)
3.0

Puedes encadenar exponenciaciones juntas. En otras palabras, puedes elevar un número a


múltiples poderes. Por ejemplo, 2 3 2.

Complete el espacio en blanco para corregir este código.

>>> (1 + 3 ) ** 2
16

1.12 Cociente y residuo


Para determinar el cociente y el residuo de una división, use los operadores de división de piso y
módulo, respectivamente.
La división de piso se realiza utilizando dos diagonales.
El operador de módulo se lleva a cabo con un símbolo de porcentaje (%).
Estos operadores se pueden usar con flotantes y enteros.

Este código muestra que 6 entra en 20 tres veces, y el resto cuando 1.25 se divide por 0.5 es 0.25.

>>> 20 // 6
3
>>> 1.25% 0.5
0.25

En el ejemplo anterior, 20% 6 devolverá 2, porque 3 * 6 + 2 es igual a 20.

¿Cuál es el resultado de este código?

>>> 7% (5 // 2)
• 1
• 7
• 0
1.13 Cadenas
Si desea usar texto en Python, debe usar una cadena.
Se crea una cadena al ingresar texto entre dos comillas simples o dobles.

Cuando la consola de Python muestra una cadena, generalmente usa comillas simples. El
delimitador utilizado para una cadena no afecta su comportamiento de ninguna manera.

>>> "Python is fun!"


'Python is fun!'
>>> 'Always look on the bright side of life'
'Always look on the bright side of life'

Hay otro tipo de cadena en Python llamado docstrings que se usa para comentar en
bloque, pero en realidad es una cadena. Aprenderá sobre esto en futuras lecciones.

Complete el código para crear una cadena que contenga "Hello world".

>>> "Hello world"


'Hello world'

1.14 Cadenas
Algunos caracteres no se pueden incluir directamente en una cadena. Por ejemplo, las comillas
dobles no se pueden incluir directamente en una cadena de comillas dobles; esto causaría que
termine prematuramente

Los personajes como estos deben escaparse colocando una diagonal inversa antes que ellos.
Otros caracteres comunes que se deben escapar son las nuevas líneas y las barras invertidas.
Las comillas dobles solo deben escaparse en cadenas de comillas dobles, y lo mismo es cierto para
las cadenas de comillas simples.

>>> 'Brian\'s mother: He\'s not the Messiah. He\'s a very naughty boy!'
'Brian's mother: He's not the Messiah. He's a very naughty boy!'

\n representa una nueva línea.

Las diagonales invertidas también se pueden usar para poner ciertos caracteres,
caracteres Unicode arbitrarios y varias otras cosas que no se pueden imprimir de manera
confiable. Estos caracteres se conocen como caracteres de escape.

Complete el código para crear una cadena que contenga una comilla doble.

>>> " \" "


1.15 Líneas nuevas
Python proporciona una manera fácil de evitar escribir manualmente "\n" para escapar de las
nuevas líneas en una cadena. Cree una cadena con tres conjuntos de comillas, y las nuevas líneas
que se crean presionando Enter se escapan automáticamente por usted.

>>> """Customer: Good morning.


Owner: Good morning, Sir. Welcome to the National Cheese Emporium."""

'Customer: Good morning.\nOwner: Good morning, Sir. Welcome to the National Cheese
Emporium.'

Como puede ver, el \n se colocó automáticamente en la salida, donde presionamos Enter.

Complete la parte faltante de la salida.

>>> """First line


second line"""
'First line \n second line'

1.16 Salida
Por lo general, los programas toman datos y los procesan para producir resultados.
En Python, puede usar la función de print para producir resultados. Esto muestra una
representación textual de algo en la pantalla.

>>> print(1 + 1)
2
>>> print("Hello\nWorld!")
Hello
World!

Cuando se imprime una cadena, las comillas a su alrededor no se muestran.

¿Cuál es el resultado de este código?

>>> print ('print ("print")')

• 'print("print")'
• Un mensaje de error
• print("print")
1.17 Entrada
Para obtener información del usuario en Python, puede usar la función con nombre intuitivo input.
La función solicita al usuario que ingrese y devuelve lo que ingresa como una cadena (con el
contenido escapado automáticamente).

>>> input("Enter something please: ")


Enter something please: This is what\nthe user enters!
'This is what\\nthe user enters!'

Las funciones de print y input no son muy útiles en la consola de Python, que realiza
automáticamente la entrada y salida. Sin embargo, son muy útiles en programas reales.

Complete el espacio en blanco para solicitar la entrada del usuario.

>>> input ("Enter a number:")


1.18 Concatenación
Al igual que con los enteros y flotantes, se pueden agregar cadenas en Python, utilizando un proceso
llamado concatenación, que se puede hacer en cualquiera de las dos cadenas.

Al concatenar cadenas, no importa si se han creado con comillas simples o dobles.

>>> "Spam" + 'eggs'


'Spameggs'

>>> print("First string" + ", " + "second string")


First string, second string

No puede concatenar cadenas con números (enteros). Descubra por qué en la próxima
lección.

Completa la cadena que falta.

>>> "Hello " + ' world'


'Hello world'

1.19 Concatenación
Incluso si sus cadenas contienen números, todavía se agregan como cadenas en lugar de enteros.
Agregar una cadena a un número produce un error, ya que, aunque puedan parecer similares, son
dos entidades diferentes.

>>> "2" + "2"


'22'
>>> 1 + '2' + 3 + '4'
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: unsupported operand type(s) for +: 'int' and 'str'

In future lessons, only the final line of error messages will be displayed, as it is the only
one that gives details about the type of error that has occurred.

¿Qué línea de código produce un error?

• "7" + 'eight'
• "one" + "2"
• 3+4
• '5' + 6
1.20 Operaciones con cadenas
Las cadenas también se pueden multiplicar por enteros. Esto produce una versión repetida de la
cadena original. El orden de la cadena y el número entero no importa, pero la cadena generalmente
viene primero.

Las cadenas no se pueden multiplicar por otras cadenas. Las cadenas tampoco pueden multiplicarse
por flotantes, incluso si las flotantes son números enteros.

>>> print("spam" * 3)
spamspamspam

>>> 4 * '2'
'2222'

>>> '17' * '87'


TypeError: can't multiply sequence by non-int of type 'str'

>>> 'pythonisfun' * 7.0


TypeError: can't multiply sequence by non-int of type 'float'

Intente multiplicar una cadena por 0 (cero) y vea qué sucede.

¿Cuál es el resultado de este código?

>>> print(3 * '7')


‘777’
1.21 Conversión de tipo
En Python, es imposible completar ciertas operaciones debido a los tipos involucrados. Por ejemplo,
no puede agregar dos cadenas que contengan los números 2 y 3 juntos para producir el número
entero 5, ya que la operación se realizará en cadenas, haciendo que el resultado sea '23'.
La solución a esto es la conversión de tipos.
En ese ejemplo, usaría la función int.

>>> "2" + "3"


'23'
>>> int("2") + int("3")
5

En Python, los tipos que hemos usado hasta ahora han sido enteros, flotantes y cadenas.
Las funciones utilizadas para convertir a estos son int, float y str, respectivamente.

¿Cuál es el resultado de este código?

>>> int ("3" + "4")

• “7”
• “34”
• 34
1.22 Conversión de tipo
Otro ejemplo de conversión de tipo es convertir la entrada del usuario (que es una cadena) en
números ( enteros o flotantes ), para permitir el desempeño de los cálculos.

>>> float(input("Enter a number: ")) + float(input("Enter another number: "))


Enter a number: 40
Enter another number: 2
42.0

Pasar valores no enteros o flotantes causará un error.

¿Cuál es el resultado de este código?

>>> float("210" * int(input("Enter a number:" )))


Enter a number: 2

• “210210”
• “420.0”
• 210210.0
• 420
1.23 Variables
Las variables juegan un papel muy importante en la mayoría de los lenguajes de programación, y
Python no es una excepción. Una variable le permite almacenar un valor asignándolo a un nombre,
que puede usarse para referirse al valor más adelante en el programa.

Para asignar una variable, use un signo igual. A diferencia de la mayoría de las líneas de código que
hemos visto hasta ahora, no produce ningún resultado en la consola de Python.

>>> x = 7
>>> print(x)
7
>>> print(x + 3)
10
>>> print(x)
7

Puede usar variables para realizar las operaciones correspondientes, tal como lo hizo con
números y cadenas. Como puede ver, la variable almacena su valor en todo el programa.

¿Cuál es el resultado de este código?

>>> spam = "eggs"


>>> print(spam * 3)
• eggseggseggs
• spamspamspam
• "spamspamspam"
1.24 Variables
Las variables se pueden reasignar tantas veces como desee, para cambiar su valor.

En Python, las variables no tienen tipos específicos, por lo que puede asignar una cadena a una
variable y luego asignar un número entero a la misma variable.

>>> x = 123.456
>>> print(x)
123.456
>>> x = "This is a string"
>>> print(x + "!")
This is a string!

Sin embargo, no es una buena práctica. Para evitar errores, trate de evitar sobrescribir la
misma variable con diferentes tipos de datos.

Arrastre la respuesta correcta para que el código funcione correctamente.

>>> x = 5
>>> y = _____
>>> print(x + y)
12
• “7”
• 7
• =7
1.25 Nombres de Variables
Se aplican ciertas restricciones con respecto a los caracteres que se pueden usar en los nombres de
variables de Python. Los únicos caracteres permitidos son letras, números y guiones bajos. Además,
no pueden comenzar con números.

No seguir estas reglas da como resultado errores.

>>> this_is_a_normal_name = 7

>>> 123abc = 7
SyntaxError: invalid syntax

>>> spaces are not allowed


SyntaxError: invalid syntax

Python es un lenguaje de programación sensible a mayúsculas y minúsculas. Por lo tanto,


Lastname y lastname son dos nombres de variables diferentes en Python.
¿Cuál de estos es un nombre de variable válido en Python?

• a-variable-name
• A_VARIABLE_NAME
• a variable name
1.26 Variables
Intentar hacer referencia a una variable que no ha asignado provoca un error.
Puede usar la instrucción del para eliminar una variable, lo que significa que se elimina la referencia
del nombre al valor, e intentar usar la variable provoca un error. Las variables eliminadas se pueden
reasignar a más tarde de forma normal.

>>> foo = "a string"


>>> foo
'a string'
>>> bar
NameError: name 'bar' is not defined
>>> del foo
>>> foo
NameError: name 'foo' is not defined

También puede tomar el valor de la variable de la entrada del usuario.

>>> foo = input("Enter a number: ")


Enter a number: 7
>>> print(foo)
7

Las variables foo y bar se llaman variables metasintácticas , lo que significa que se usan
como nombres de marcador de posición en el código de ejemplo para demostrar algo.

¿Cuál es el resultado de este código?

>>> spam = 2
>>> eggs = 3
>>> del spam
>>> eggs = 4
>>> spam = 5
>>> print(spam * eggs)
20
1.27 Operadores In-Place
Los operadores In-Place le permiten escribir código como 'x = x + 3' de manera más concisa, como
'x + = 3'.

Lo mismo es posible con otros operadores como -, *, / y % también.

>>> x = 2
>>> print(x)
2
>>> x += 3
>>> print(x)
5
¿Cuál es el resultado de este código?

>>> x = 4
>>> x *= 3
>>> print(x)
12
1.28 Operadores In-Place
Estos operadores también se pueden usar en tipos distintos de números, como cadenas.

>>> x = "spam"
>>> print(x)
spam

>>> x += "eggs"
>>> print(x)
spameggs

Muchos otros idiomas tienen operadores especiales como '++' como acceso directo para 'x
+ = 1'. Python no tiene estos.

¿Cuál es el resultado de este código?

>>> x = "a"
>>> x *= 3
print(x)
aaa
1.29 Usando un editor
Hasta ahora, solo hemos usado Python con la consola, ingresando y ejecutando una línea de código
a la vez.
Los programas reales se crean de manera diferente; Muchas líneas de código se escriben en un
archivo y luego se ejecutan con el intérprete de Python .

En IDLE, esto se puede hacer creando un nuevo archivo, ingresando algún código, guardando el
archivo y ejecutándolo. Esto se puede hacer con los menús o con los atajos de teclado Ctrl-N, Ctrl-S
y F5.

Cada línea de código en el archivo se interpreta como si la hubiera ingresado una línea a la vez en la
consola.

x=7
x=x+2
print(x)
Resultado:

Python source files have an extension of .py

Puede ejecutar, guardar y compartir sus códigos de Python en nuestro Code Playground,
sin instalar ningún software adicional.
Consulte esta lección si necesita instalar el software en su computadora.

¿Qué líneas se ejecutan cuando se ejecuta un archivo Python?

• Las primeras 100 líneas.


• Cada línea
• Solo la primera línea

1.30 Prueba Modulo 1


¿Cuál es el resultado de este código?

>>> spam = "7"


>>> spam = spam + "0"
>>> eggs = int(spam) + 3
>>> print(float(eggs))

• 73.0
• 10.0
• 703

¿Cuál es el resultado de este código?

>>> word = input("Enter a word: ")


Enter a word: cheese
>>> print(word + ' shop')

• cheese shop
• 'cheeseshop'
• "cheeseshop"

¿Cuál es el resultado de este código?

>>> x = 5
>>> y = x + 3
>>> y = int(str(y) + "2")
>>> print(y)
82

Complete los espacios en blanco para declarar una variable, agregue 5 e imprima su valor.

>>> x = 4
>>> x + = 5
>>> print (x)

¿Cuál es el resultado de este código?

>>> x = 3
>>> num = 17
>>> print(num % x)
2

2 Estructuras de Control
2.1 Booleanos
Otro tipo en Python es el tipo Booleano. Hay dos valores booleanos: True y False.
Se pueden crear comparando valores, por ejemplo, utilizando el operador igual ==.

>>> my_boolean = True


>>> my_boolean
True

>>> 2 == 3
False
>>> "hello" == "hello"
True

Tenga cuidado de no confundir la asignación (un signo igual) con la comparación (dos
signos iguales).

¿Cuáles son los dos valores booleanos en Python?

• Truth and Falsity


• True and False
• true and false
2.2 Comparación
Otro operador de comparación, el operador no igual (!=), Se evalúa como True si los elementos que
se comparan no son iguales, y False si lo son.

>>> 1 != 1
False
>>> "eleven" != "seven"
True
>>> 2 != 10
True

¿Cuál es el resultado de este código?

>>> 7 != 8

• True
• False
2.3 Comparación
Python también tiene operadores que determinan si un número ( flotante o entero ) es mayor o
menor que otro. Estos operadores son > y < respectivamente.

>>> 7 > 5
True
>>> 10 < 10
False
¿Cuál es el resultado de este código?

>>> 7 > 7.0

• True
• False
2.4 Comparación
Los operadores: mayor o igual que, y menor o igual a son >= y <=.
Son los mismos que los operadores estrictos mayores y menores que los operadores, excepto que
devuelven True al comparar números iguales.

>>> 7 <= 8
True
>>> 9 >= 9.0
True

Los operadores, mayor que y menor que también se pueden usar para comparar cadenas
lexicográficamente (el orden alfabético de las palabras se basa en el orden alfabético de
sus letras componentes).

¿Cuál es el resultado de este código?


>>> 8.7 <= 8.70
• False
• Se produce un error
• True
2.5 Sentencia if
Puede usar sentencias if para ejecutar código si se cumple una determinada condición.
Si una expresión se evalúa como True, se llevan a cabo algunas declaraciones. De lo contrario, no se
llevan a cabo.
Una declaración if se ve así:

if expresión:
sentencias

Python usa sangría (espacio en blanco al comienzo de una línea) para delimitar bloques de
código. Otros lenguajes, como C, usan llaves para lograr esto, pero en Python la sangría es
obligatoria; Los programas no funcionarán sin él. Como puede ver, las declaraciones en el
if deben sangrarse.

¿Qué parte de una declaración if debe sangrarse?

• Todo ello
• Las declaraciones dentro de ella
• La primera línea
2.6 Sentencia if
Aquí hay un ejemplo de una declaración if:

if 10 > 5:
print("10 greater than 5")

print("Program ended")

La expresión determina si 10 es mayor que cinco. Como es así, se ejecuta la instrucción con sangría
y se emite "10 mayor que 5". Luego, se ejecuta la instrucción no sangrada, que no forma parte de la
instrucción if, y se muestra "Programa finalizado".

Resultado:

>>>
10 greater than 5
Program ended
>>>
Observe los dos puntos al final de la expresión en la instrucción if.

Como el programa contiene varias líneas de código, debe crearlo como un archivo
separado y ejecutarlo.
¿Cuál es el resultado de este código?

spam = 7
if spam > 5:
print("five")
if spam > 8:
print("eight")

• eight
• nada
• five
2.7 Sentencia if
Para realizar comprobaciones más complejas, la sentencias if pueden anidarse, una dentro de la
otra.
Esto significa que la sentencia if interna es la parte de la declaración de la externa. Esta es una forma
de ver si se cumplen múltiples condiciones.

Por ejemplo:

num = 12
if num > 5:
print("Bigger than 5")
if num <=47:
print("Between 5 and 47")

Resultado:

>>>
Bigger than 5
Between 5 and 47
>>>

¿Cuál es el resultado de este código?

num = 7
if num > 3:
print("3")
if num < 5:
print("5")
if num ==7:
print("7")
3

2.8 Sentencia else


Una instrucción else sigue a una instrucción if y contiene un código que se llama cuando la
instrucción if se evalúa como False.
Al igual que con las declaraciones if, el código dentro del bloque debe estar sangrado.

x=4
if x == 5:
print("Yes")
else:
print("No")

Resultado:

>>>
No
>>>

¿Cuál es el resultado de este código?

if 1 + 1 == 2:
if 2 * 2 == 8:
print("if")
else:
print("else")
• if
• No hay salida
• else
2.9 Sentencia else
Puede encadenar declaraciones if y else para determinar qué opción en una serie de posibilidades
es verdadera.

Por ejemplo:

num = 7
if num == 5:
print("Number is 5")
else:
if num == 11:
print("Number is 11")
else:
if num == 7:
print("Number is 7")
else:
print("Number isn't 5, 11 or 7")

Resultado:

>>>
Number is 7
>>>
Complete los espacios en blanco para comparar las variables y generar el texto correspondiente:

x = 10
y = 20
if x > y:
print("if statement")
else:
print("else statement")

2.10 Sentencia elif


La declaración elif ( abreviatura de else if) es un atajo para usar cuando se encadenan
declaraciones if y else .
Una serie de sentencias if elif puede tener un bloque final else, que se llama si ninguna de las
expresiones if o elif es True.

Por ejemplo:

num = 7
if num == 5:
print("Number is 5")
elif num == 11:
print("Number is 11")
elif num == 7:
print("Number is 7")
else:
print("Number isn't 5, 11 or 7")

Resultado:

>>>
Number is 7
>>>

En otros lenguajes de programación, los equivalentes a la declaración elif tienen nombres


diferentes, incluidos else if , elseif o elsif.

Una opción más corta para una instrucción "else if" es:

• elif

2.11 Lógica booleana


La lógica booleana se usa para crear condiciones más complicadas para sentencias if que se basan
en más de una condición.
Los operadores booleanos de Python son and, or , y not.
El operador and toma dos argumentos y se evalúa como True si, y solo si, sus dos argumentos son
True. De lo contrario, se evalúa como False.

>>> 1 == 1 and 2 == 2
True
>>> 1 == 1 and 2 == 3
False
>>> 1 != 1 and 2 == 2
False
>>> 2 < 1 and 3 > 6
False

Python usa palabras para sus operadores booleanos, mientras que la mayoría de los otros
idiomas usan símbolos como &&, || y!.

¿Cuál es el resultado de este código?

if (1 == 1) and (2 + 2 > 3):


print("true")
else:
print("false")

• false
• true
• true false

2.12 Booleano Or
El operador or también toma dos argumentos. Se evalúa como True si alguno (o ambos) de sus
argumentos son True y False si ambos argumentos son False.

>>> 1 == 1 or 2 == 2
True
>>> 1 == 1 or 2 == 3
True
>>> 1 != 1 or 2 == 2
True
>>> 2 < 1 or 3 > 6
False
Complete los espacios en blanco para imprimir "Bienvenido".

age = 15
money = 500
if age > 18 or money > 100:
print("Welcome")
2.13 Boleano Not
A diferencia de otros operadores que hemos visto hasta ahora, not solo toma un argumento y lo
invierte.

El resultado de not True es False, y not False es True.

>>> not 1 == 1
False
>>> not 1 > 7
True

Puede encadenar varias declaraciones condicionales en una declaración if utilizando los


operadores booleanos.

¿Cuál es el resultado de este código?

if not True:
print("1")
elif not (1 + 1 == 3):
print("2")
else:
print("3")
2
2.14 Precedencia de operadores
La precedencia de operadores es un concepto muy importante en la programación. Es una
extensión de la idea matemática del orden de las operaciones (la multiplicación se realiza antes de
la suma, etc.) para incluir otros operadores, como los de la lógica booleana.

El siguiente código muestra que == tiene una prioridad mayor que or:

>>> False == False or True


True
>>> False == (False or True)
False
>>> (False == False) or True
True

El orden de las operaciones de Python es el mismo que el de las matemáticas normales:


paréntesis primero, luego exponenciación, luego multiplicación / división, y luego suma /
resta.

¿Cuál es el resultado de este código?

if 1 + 1 * 3 == 6:
print("Yes")
else:
print("No")
• Yes
• No
2.15 Precedencia de operadores
La siguiente tabla enumera todos los operadores de Python, desde la prioridad más alta hasta la
más baja.

Los operadores en el mismo cuadro tienen la misma prioridad.

¿Cuál es el resultado de este código?

x=4
y=2
if not 1 + 1 == y or x == 4 and 7 == 8:
print("Yes")
elif x > y:
print("No")
• No
• Yes
• Yes No
2.16 Ciclo while
Una instrucción if se ejecuta una vez si su condición se evalúa como True y nunca si se evalúa como
False.
Una instrucción while es similar, excepto que se puede ejecutar más de una vez. Las declaraciones
en su interior se ejecutan repetidamente, siempre que la condición se mantenga. Una vez que se
evalúa como False, se ejecuta la siguiente sección de código.
A continuación, se muestra un ciclo while que contiene una variable que cuenta de 1 a 5, momento
en el cual el ciclo termina.

i=1
while i <=5:
print(i)
i=i+1

print("Finished!")
Resultado:

>>>
1
2
3
4
5
Finished!
>>>

El código en el cuerpo de un tiempo de bucle se ejecuta repetidamente. Esto se llama


iteración.

¿Cuántos números imprime este código?

i=3
while i>=0:
print(i)
i=i-1

• 4

2.17 Ciclo while


El bucle infinito es un tipo especial de bucle while; nunca deja de correr. Su condición siempre
permanece True.
Un ejemplo de un bucle infinito:
while 1==1:
print("In the loop")

Este programa imprimirá indefinidamente "In the loop".

Puede detener la ejecución del programa utilizando el acceso directo Ctrl-C o cerrando el
programa.

Complete los espacios en blanco para crear un bucle que incremente el valor de x en 2 e
imprima los valores pares.

x=0
while x <=20:
print(x)
x += 2
2.18 Break
Para finalizar una, ciclo while prematuramente, la instrucción break puede ser usada.
Cuando se encuentra dentro de un bucle, la instrucción break hace que el bucle termine de
inmediato.

i=0
while 1==1:
print(i)
i=i+1
if i >= 5:
print("Breaking")
break

print("Finished")

Resultado:

>>>
0
1
2
3
4
Breaking
Finished
>>>

El uso de la declaración break fuera de un bucle provoca un error.

¿Cuántos números imprime este código?

i=5
while True:
print(i)
i=i-1
if i <= 2:
break

• 3

2.19 Continue
Otra declaración que se puede usar dentro de los bucles es continue.

A diferencia de break, continue salta de nuevo a la parte superior del bucle, en lugar de detenerlo.

i=0
while True:
i = i +1
if i == 2:
print("Skipping 2")
continue
if i == 5:
print("Breaking")
break
print(i)

print("Finished")

Resultado:

>>>
1
Skipping 2
3
4
Breaking
Finished
>>>

Básicamente, la instrucción continue detiene la iteración actual y continúa con la siguiente.

El uso de la instrucción continue fuera de un ciclo provoca un error.

¿Qué enunciado finaliza la iteración actual y continúa con la siguiente?

• continue
2.20 Listas
Las listas son otro tipo de objeto en Python. Se utilizan para almacenar una lista indexada de
artículos.
Se crea una lista usando corchetes con comas que separan los elementos.
Se puede acceder al determinado elemento de la lista utilizando su índice entre corchetes.
Por ejemplo:

words = ["Hello", "world", "!"]


print(words[0])
print(words[1])
print(words[2])

Resultado:

>>>
Hello
world
!
>>>

El índice del primer elemento de la lista es 0, en lugar de 1, como podría esperarse.

¿Cuál es el resultado de este código?

nums = [5, 4, 3, 2, 1]
print(nums[1])
4
2.21 Listas
Se crea una lista vacía con un par de corchetes vacíos.

empty_list = []
print(empty_list)

Resultado:

>>>
[]
>>>

La mayoría de las veces, una coma no seguirá el último elemento de una lista. Sin
embargo, es perfectamente válido colocar uno allí, y se recomienda en algunos casos.

¿Cuántos artículos hay en esta lista?

[2,]

• 1
• 2
• 3
2.22 Listas
Normalmente, una lista contendrá elementos de un solo tipo de elemento, pero también es posible
incluir varios tipos diferentes.
Las listas también se pueden anidar dentro de otras listas.

number = 3
things = ["string", 0, [1, 2, number], 4.56]
print(things[1])
print(things[2])
print(things[2][2])

Resultado:

>>>
0
[1, 2, 3]
3
>>>

Las listas de listas a menudo se usan para representar cuadrículas 2D, ya que Python
carece de las matrices multidimensionales que se usarían para esto en otros idiomas.

Complete los espacios en blanco para crear una lista e imprimir su tercer elemento.

list = [42, 55, 67]


print(list[2])
2.23 Listas
La indexación fuera de los límites de los posibles valores de lista provoca un IndexError.
Algunos tipos, como las cadenas, se pueden indexar como listas. La indexación de cadenas se
comporta como si estuviera indexando una lista que contiene cada carácter en la cadena.
Para otros tipos, como los enteros, indexarlos no es posible, y causa un error de tipo.

str = "Hello world!"


print(str[6])
Resultado:

>>>
w
>>>

¿Qué línea de código causará un error?

num = [5, 4, 3, [2], 1]


print(num[0])
print(num[3][0])
print(num[5])
• Línea 2
• Línea 3
• Línea 4

2.24 Operaciones con lista


El elemento en un cierto índice en una lista puede ser reasignado.

Por ejemplo:

nums = [7, 7, 7, 7, 7]
nums[2] = 5
print(nums)

Resultado:

>>>
[7, 7, 5, 7, 7]
>>>

¿Cuál es el resultado de este código?

nums = [1, 2, 3, 4, 5]
nums[3] = nums[1]
print(nums[3])
2

2.25 Operaciones con lista


Las listas se pueden agregar y multiplicar de la misma manera que las cadenas.

Por ejemplo:

nums = [1, 2, 3]
print(nums + [4, 5, 6])
print(nums * 3)

Resultado:

>>>
[1, 2, 3, 4, 5, 6]
[1, 2, 3, 1, 2, 3, 1, 2, 3]
>>>

Las listas y las cadenas son similares en muchos aspectos: las cadenas se pueden
considerar como listas de caracteres que no se pueden cambiar.

Complete los espacios en blanco para crear una lista, reasigne su segundo elemento e imprima
toda la lista.

nums = [33, 42, 56]


nums[1] = 22
print(nums)

2.26 Operaciones con lista


Para verificar si un elemento está en una lista, se puede usar el operador in. Devuelve True si el
elemento aparece una o más veces en la lista y False si no lo hace.

words = ["spam", "egg", "spam", "sausage"]


print("spam" in words)
print("egg" in words)
print("tomato" in words)

Resultado:

>>>
True
True
False
>>>

El operador in también se usa para determinar si una cadena es o no una subcadena de


otra cadena.

¿Cuál es el resultado de este código?

nums = [10, 9, 8, 7, 6, 5]
nums[0] = nums[1] - 5
if 4 in nums:
print(nums[3])
else:
print(nums[4])
7

2.27 Operaciones con lista


Para verificar si un elemento no está en una lista, puede usar el operador not de una de las siguientes
maneras:

nums = [1, 2, 3]
print(not 4 in nums)
print(4 not in nums)
print(not 3 in nums)
print(3 not in nums)

Resultado:

>>>
True
True
False
False
>>>

Complete los espacios en blanco para imprimir "Sí" si la lista contiene 'z':

letters = ['a', 'b', 'z']


if "z" in letters:
print("Yes")

2.28 Funciones de lista

También podría gustarte