Las palabras clave son las palabras reservadas en Python. No podemos utilizar una palabra clave como nombre de variable, nombre de función o cualquier otro identificador.

Aquí tienes una lista de todas las palabras clave en la programación de Python

Palabras clave en el lenguaje de programación Python
False await else import pass
Nada romper excepto en subir
Verdadero clase finalmente es retorno
y continuar para lambda intentar
como def de no local mientras
assert del global not with
async elif if or yield

Las palabras clave anteriores pueden modificarse en diferentes versiones de Python. Algunas pueden ser añadidas o eliminadas. Siempre puede obtener la lista de palabras clave en su versión actual escribiendo lo siguiente en el prompt.

>>> import keyword>>> print(keyword.kwlist)

Descripción de palabras clave en Python con ejemplos

Verdadero, Falso

True y False son valores de verdad en Python. Son los resultados de las operaciones de comparación o de las operaciones lógicas (booleanas) en Python. Por ejemplo:

>>> 1 == 1True>>> 5 > 3True>>> True or FalseTrue>>> 10 <= 1False>>> 3 > 7False>>> True and FalseFalse

Aquí podemos ver que las tres primeras afirmaciones son verdaderas por lo que el intérprete devuelve True y devuelve False para las tres afirmaciones restantes. True y False en python es lo mismo que 1 y 0. Esto se puede justificar con el siguiente ejemplo:

>>> True == 1True>>> False == 0True>>> True + True2

None

None es una constante especial en Python que representa la ausencia de un valor o un valor nulo.

Es un objeto de su propio tipo de datos, el NoneType. No podemos crear varios objetos None pero podemos asignarlo a variables. Estas variables serán iguales entre sí.

Hay que tener especial cuidado en que None no implique False, 0 o cualquier lista vacía, diccionario, cadena, etc. Por ejemplo:

>>> None == 0False>>> None == False>>> None == FalseFalse>>> x = None>>> y = None>>> x == yTrue

Las funciones vacías que no devuelven nada devolverán un objeto None automáticamente. None también es devuelto por funciones en las que el flujo del programa no encuentra una sentencia de retorno. Por ejemplo:

def a_void_function(): a = 1 b = 2 c = a + bx = a_void_function()print(x)

Salida

None

Este programa tiene una función que no devuelve ningún valor, aunque hace algunas operaciones en su interior. Así que cuando imprimimos x, obtenemos None que se devuelve automáticamente (implícitamente). Del mismo modo, aquí tenemos otro ejemplo:

def improper_return_function(a): if (a % 2) == 0: return Truex = improper_return_function(3)print(x)

Salida

None

Aunque esta función tiene una sentencia return, no se alcanza en todos los casos. La función devolverá True sólo cuando la entrada sea par.

Si damos a la función un número impar, se devuelve None implícitamente.

y, o , no

and, or, not son los operadores lógicos en Python. and resultará en True sólo si ambos operandos son True. La tabla de verdad para and se da a continuación:

Tabla de verdad para and
A B A y B
Verdadero Verdadero Verdadero
Verdadero Falso Falso
Falso Verdad Falso
Falso Falso Falso

or resultará en True si alguno de los operandos es True. La tabla de verdad para or se da a continuación:

Tabla de verdad para or
A B A o B
Verdadero Verdadero Verdadero
Verdadero Falso Verdad
Falso Verdad Verdad
Falso Falso Falso

not operador se utiliza para invertir el valor de verdad. La tabla de verdad para not se da a continuación:

Tabla de verdad para not
A no A
Verdadero Falso
Falso True

algunos ejemplos de su uso se dan a continuación

>>> True and FalseFalse>>> True or FalseTrue>>> not FalseTrue

as

as se utiliza para crear un alias al importar un módulo. Significa dar un nombre diferente (definido por el usuario) a un módulo mientras se importa.

Como por ejemplo, Python tiene un módulo estándar llamado math. Supongamos que queremos calcular cuál es el coseno de pi utilizando un alias. Podemos hacerlo de la siguiente manera usando as:

>>> import math as myAlias>>>myAlias.cos(myAlias.pi)-1.0

Aquí importamos el módulo math dándole el nombre myAlias. Ahora podemos referirnos al módulo math con este nombre. Usando este nombre hemos calculado el cos(pi) y hemos obtenido -1.0 como respuesta.

assert

assertse utiliza con fines de depuración.

Mientras programamos, a veces deseamos conocer el estado interno o comprobar si nuestras suposiciones son ciertas. assert nos ayuda a hacer esto y a encontrar errores más convenientemente. assert va seguido de una condición.

Si la condición es verdadera, no pasa nada. Pero si la condición es falsa, se levanta AssertionError. Por ejemplo:

>>> a = 4>>> assert a < 5>>> assert a > 5Traceback (most recent call last): File "<string>", line 301, in runcode File "<interactive input>", line 1, in <module>AssertionError

Para nuestra mejor comprensión, también podemos proporcionar un mensaje que se imprima con el AssertionError.

>>> a = 4>>> assert a > 5, "The value of a is too small"Traceback (most recent call last): File "<string>", line 301, in runcode File "<interactive input>", line 1, in <module>AssertionError: The value of a is too small

En este punto podemos notar que,

assert condition, message

es equivalente a,

if not condition: raise AssertionError(message)

async, await

Las palabras clave async y await son proporcionadas por la biblioteca asyncio de Python. Se utilizan para escribir código concurrente en Python. Por ejemplo,

import asyncioasync def main(): print('Hello') await asyncio.sleep(1) print('world')

Para ejecutar el programa, utilizamos

asyncio.run(main())

En el programa anterior, la palabra clave async especifica que la función se ejecutará de forma asíncrona.

Aquí, primero se imprime Hola. La palabra clave await hace que el programa espere 1 segundo. Y luego se imprime el mundo.

break, continue

break y continue se utilizan dentro de los bucles for y while para alterar su comportamiento normal.

break terminará el bucle más pequeño en el que se encuentre y el control fluye a la sentencia inmediatamente inferior al bucle. continue hace que termine la iteración actual del bucle, pero no todo el bucle.

Esto se puede ilustrar con los dos ejemplos siguientes:

for i in range(1,11): if i == 5: break print(i)

Salida

1234

Aquí, el bucle for pretende imprimir números del 1 al 10. Pero la condición if se cumple cuando i es igual a 5 y rompemos el bucle. Así, sólo se imprime el rango del 1 al 4.

for i in range(1,11): if i == 5: continue print(i)

Salida

1234678910

Aquí utilizamos continue para el mismo programa. Así, cuando se cumple la condición, se salta esa iteración. Pero no salimos del bucle. Por lo tanto, se imprimen todos los valores excepto el 5.

Aprende más sobre la sentencia break y continue de Python.

class

classse utiliza para definir una nueva clase definida por el usuario en Python.

La clase es una colección de atributos y métodos relacionados que tratan de representar una situación del mundo real. Esta idea de juntar datos y funciones en una clase es fundamental para el concepto de programación orientada a objetos (POO).

Las clases se pueden definir en cualquier parte de un programa. Pero es una buena práctica definir una sola clase en un módulo. A continuación se muestra un ejemplo de uso:

class ExampleClass: def function1(parameters): … def function2(parameters): …

Aprende más sobre los objetos y las clases de Python.

def

def se utiliza para definir una función definida por el usuario.

La función es un bloque de sentencias relacionadas, que juntas realizan alguna tarea específica. Nos ayuda a organizar el código en trozos manejables y también para hacer alguna tarea repetitiva.

El uso de def se muestra a continuación:

def function_name(parameters): …

Aprende más sobre las funciones de Python.

del

delse utiliza para eliminar la referencia a un objeto. Todo es objeto en Python. Podemos borrar una referencia a una variable usando del

>>> a = b = 5>>> del a>>> aTraceback (most recent call last): File "<string>", line 301, in runcode File "<interactive input>", line 1, in <module>NameError: name 'a' is not defined>>> b5

Aquí podemos ver que la referencia de la variable a fue borrada. Por lo tanto, ya no está definida. Pero b sigue existiendo.

delTambién se utiliza para eliminar elementos de una lista o de un diccionario:

>>> a = >>> del a>>> a

if, else, elif

if, else, elifse utilizan para la ramificación condicional o la toma de decisiones.

Cuando queremos probar alguna condición y ejecutar un bloque sólo si la condición es verdadera, entonces utilizamos if y elif. elif es la abreviatura de else if. else es el bloque que se ejecuta si la condición es falsa. Esto quedará claro con el siguiente ejemplo:

def if_example(a): if a == 1: print('One') elif a == 2: print('Two') else: print('Something else')if_example(2)if_example(4)if_example(1)

Salida

TwoSomething elseOne

Aquí, la función comprueba el número de entrada e imprime el resultado si es 1 o 2. Cualquier entrada que no sea ésta hará que se ejecute la parte else del código.

Aprende más sobre la declaración if y if…else de Python.

except, raise, try

except, raise, tryse utilizan con las excepciones en Python.

Las excepciones son básicamente errores que sugieren que algo ha ido mal durante la ejecución de nuestro programa. IOError, ValueError, ZeroDivisionError, ImportError, NameError, TypeError etc. son algunos ejemplos de excepción en Python. Los bloques try...except se utilizan para atrapar excepciones en Python.

Podemos lanzar una excepción explícitamente con la palabra clave raise. A continuación se muestra un ejemplo:

def reciprocal(num): try: r = 1/num except: print('Exception caught') return return rprint(reciprocal(10))print(reciprocal(0))

Salida

0.1Exception caughtNone

Aquí, la función reciprocal() devuelve el recíproco del número de entrada.

Cuando introducimos 10, obtenemos la salida normal de 0,1. Pero cuando introducimos 0, se levanta automáticamente un ZeroDivisionError.

Esto lo capta nuestro bloque try…except y devolvemos None. También podríamos haber levantado el ZeroDivisionError explícitamente comprobando la entrada y manejarlo en otra parte de la siguiente manera:

if num == 0: raise ZeroDivisionError('cannot divide')

finalmente

finally se utiliza con el bloque try…except para cerrar recursos o flujos de archivos.

Usar finally asegura que el bloque de código dentro de él se ejecuta incluso si hay una excepción no manejada. Por ejemplo:

try: Try-blockexcept exception1: Exception1-blockexcept exception2: Exception2-blockelse: Else-blockfinally: Finally-block

Aquí si hay una excepción en el bloque Try-block, se maneja en el bloque except o else. Pero no importa en qué orden fluya la ejecución, podemos estar seguros de que el Finally-block se ejecuta aunque haya un error. Esto es útil para limpiar los recursos.

Aprende más sobre el manejo de excepciones en la programación en Python.

for

for se utiliza para hacer bucles. Generalmente usamos for cuando sabemos el número de veces que queremos hacer un bucle.

En Python podemos usarlo con cualquier tipo de secuencias como una lista o una cadena. Aquí hay un ejemplo en el que for se utiliza para recorrer una lista de nombres:

names = for i in names: print('Hello '+i)

Salida

Hello JohnHello MonicaHello StevenHello Robin

Aprende más sobre el bucle for de Python.

De, import

importpalabra clave se utiliza para importar módulos en el espacio de nombres actual. from…import se utiliza para importar atributos o funciones específicas en el espacio de nombres actual. Por ejemplo:

import math

importará el módulo math. Ahora podemos usar la función cos() dentro de él como math.cos(). Pero si quisiéramos importar sólo la función cos(), esto se puede hacer usando from as

from math import cos

ahora podemos usar la función simplemente como cos(), sin necesidad de escribir math.cos().

Aprende más sobre los módulos de Python y la sentencia import.

global

globalse utiliza para declarar que una variable dentro de la función es global (fuera de la función).

Si necesitamos leer el valor de una variable global, no es necesario definirla como global. Se entiende.

Si necesitamos modificar el valor de una variable global dentro de una función, entonces debemos declararla con global. De lo contrario, se crea una variable local con ese nombre.

El siguiente ejemplo nos ayudará a aclarar esto.

globvar = 10def read1(): print(globvar)def write1(): global globvar globvar = 5def write2(): globvar = 15read1()write1()read1()write2()read1()

Salida

1055

Aquí, la función read1() sólo está leyendo el valor de globvar. Por lo tanto, no necesitamos declararla como global. Pero la función write1() está modificando el valor, por lo que necesitamos declarar la variable como global.

Podemos ver en nuestra salida que la modificación tuvo lugar (10 se cambia a 5). El write2() también intenta modificar este valor. Pero no lo hemos declarado como global.

Por lo tanto, se crea una nueva variable local globvar que no es visible fuera de esta función. Aunque modifiquemos esta variable local a 15, la variable global permanece inalterada. Esto es claramente visible en nuestra salida.

en

inse utiliza para comprobar si una secuencia (lista, tupla, cadena, etc.) contiene un valor. Devuelve True si el valor está presente, de lo contrario devuelve False. Por ejemplo:

>>> a = >>> 5 in aTrue>>> 10 in aFalse

El uso secundario de in es recorrer una secuencia en un bucle for.

for i in 'hello': print(i)

Output

hello

is

is se utiliza en Python para comprobar la identidad de los objetos. Mientras que el operador == se utiliza para probar si dos variables son iguales o no, is se utiliza para probar si las dos variables se refieren al mismo objeto.

Devuelve True si los objetos son idénticos y False si no.

>>> True is TrueTrue>>> False is FalseTrue>>> None is NoneTrue

Sabemos que sólo hay una instancia de True, False y None en Python, por lo que son idénticos.

>>> == True>>> is False>>> {} == {}True>>> {} is {}False

Una lista o diccionario vacío es igual a otro vacío. Pero no son objetos idénticos ya que se encuentran por separado en la memoria. Esto se debe a que la lista y el diccionario son mutables (el valor puede ser cambiado).

>>> '' == ''True>>> '' is ''True>>> () == ()True>>> () is ()True

A diferencia de la lista y el diccionario, la cadena y la tupla son inmutables (el valor no puede ser alterado una vez definido). Por lo tanto, dos cadenas o tuplas iguales también son idénticas. Se refieren a la misma ubicación de memoria.

lambda

lambda se utiliza para crear una función anónima (función sin nombre). Es una función inline que no contiene una sentencia return. Consiste en una expresión que se evalúa y devuelve. Por ejemplo:

a = lambda x: x*2for i in range(1,6): print(a(i))

Salida

246810

Aquí hemos creado una función inline que duplica el valor, utilizando la sentencia lambda. Usamos esto para duplicar los valores en una lista que contiene de 1 a 5.

Aprende más sobre la función lamda de Python.

nonlocal

El uso de la palabra clave nonlocal es muy similar a la palabra clave global. nonlocal se utiliza para declarar que una variable dentro de una función anidada (función dentro de una función) no es local para ella, lo que significa que se encuentra en la función exterior que la incluye. Si necesitamos modificar el valor de una variable no local dentro de una función anidada, entonces debemos declararla con nonlocal. De lo contrario, se crea una variable local con ese nombre dentro de la función anidada. El siguiente ejemplo nos ayudará a aclarar esto.

def outer_function(): a = 5 def inner_function(): nonlocal a a = 10 print("Inner function: ",a) inner_function() print("Outer function: ",a)outer_function()

Salida

Inner function: 10Outer function: 10

Aquí, la inner_function() está anidada dentro de la outer_function.

La variable a está en la outer_function(). Por lo tanto, si queremos modificarla en el inner_function(), debemos declararla como nonlocal. Observa que a no es una variable global.

Por lo tanto, vemos en la salida que la variable fue modificada con éxito dentro del inner_function() anidado. El resultado de no utilizar la palabra clave nonlocal es el siguiente:

def outer_function(): a = 5 def inner_function(): a = 10 print("Inner function: ",a) inner_function() print("Outer function: ",a)outer_function()

Salida

Inner function: 10Outer function: 5

Aquí, no declaramos que la variable a dentro de la función anidada es nonlocal. Por lo tanto, se crea una nueva variable local con el mismo nombre, pero la a no local no se modifica como se ve en nuestra salida.

pass

passes una sentencia nula en Python. No ocurre nada cuando se ejecuta. Se utiliza como marcador de posición.

Supongamos que tenemos una función que aún no está implementada, pero queremos implementarla en el futuro. Simplemente escribiendo,

def function(args):

en medio de un programa nos dará IndentationError. En lugar de esto, construimos un cuerpo vacío con la sentencia pass.

def function(args): pass

También podemos hacer lo mismo en un class vacío.

class example: pass

La sentenciareturn

returnse utiliza dentro de una función para salir de ella y devolver un valor.

Si no devolvemos un valor explícitamente, Nonese devuelve automáticamente. Esto se comprueba con el siguiente ejemplo.

def func_return(): a = 10 return adef no_return(): a = 10print(func_return())print(no_return())

Salida

10None

mientras

whilese utiliza para hacer bucles en Python.

Las sentencias dentro de un bucle whilecontinúan ejecutándose hasta que la condición del bucle whilese evalúa a False o se encuentra una sentencia break. El siguiente programa ilustra esto.

i = 5while(i): print(i) i = i – 1

Salida

54321

Nota que 0 es igual a False.

Aprende más sobre el bucle while de Python.

con

withsentencia se utiliza para envolver la ejecución de un bloque de código dentro de los métodos definidos por el gestor de contexto.

El gestor de contexto es una clase que implementa métodos __enter__ y __exit__. El uso de la sentencia with asegura que el método __exit__ sea llamado al final del bloque anidado. Este concepto es similar al uso del bloque try…finally. Aquí, es un ejemplo.

with open('example.txt', 'w') as my_file: my_file.write('Hello world!')

Este ejemplo escribe el texto Hello world! en el archivo example.txt. Los objetos archivo tienen definidos los métodos __enter__ y __exit__ dentro de ellos, por lo que actúan como su propio gestor de contexto.

Primero se llama al método __enter__, luego se ejecuta el código dentro de la sentencia with y finalmente se llama al método __exit__. El método __exit__ se llama incluso si hay un error. Básicamente cierra el flujo del archivo.

yield

yield se utiliza dentro de una función como una sentencia return. Pero yield devuelve un generador.

El generador es un iterador que genera un elemento cada vez. Una lista grande de valores ocupará mucha memoria. Los generadores son útiles en esta situación ya que genera sólo un valor a la vez en lugar de almacenar todos los valores en la memoria. Por ejemplo,

>>> g = (2**x for x in range(100))

creará un generador g que genera potencias de 2 hasta el número dos elevado a la potencia 99. Podemos generar los números utilizando la función next() como se muestra a continuación.

>>> next(g)1>>> next(g)2>>> next(g)4>>> next(g)8>>> next(g)16

Y así sucesivamente… Este tipo de generador es devuelto por la sentencia yield de una función. Aquí hay un ejemplo.

def generator(): for i in range(6): yield i*ig = generator()for i in g: print(i)

Salida

Deja una respuesta

Tu dirección de correo electrónico no será publicada.