<target-language>Spanish</target-language>
Variables y expresiones en Python
Resumen
Aprende a dominar variables y expresiones en Python con ejemplos claros y buenas prácticas. Entiende la asignación con =, las convenciones de nombres para variables públicas, privadas y “superprivadas”, el uso de constantes en mayúsculas y el orden de operaciones con el acrónimo PEMDAS. Todo orientado a escribir código más legible y confiable.
¿Qué es una variable y cómo se asigna?
Una variable es un contenedor de un valor que puedes usar y transformar. En Python, el signo igual (=) significa asignación, no comparación. Python es un lenguaje dinámico: los tipos y la “privacidad” se manejan por convenciones, no por restricciones del compilador.
Asignación con =: guarda el valor en la variable.
Comparación: se ve más adelante, no uses = para comparar.
Python es dinámico: la privacidad es por convención, no hay enforcement.
¿Qué indican mayúsculas y guiones bajos en Python?
Las convenciones comunican intención al equipo y a quien lea tu código.
Nombre común: público, sin guion bajo inicial. Ejemplo:
message ="How are you?"# *string* asignado a *message*.
Guion bajo inicial: sugiere variable privada. Python no bloquea su acceso, es una señal para otros desarrolladores.
_age =20
Mayúsculas: constante por convención; en Python podría reasignarse, pero no deberías hacerlo.
MAX_RETRIES =3
Doble guion bajo: “no toques esta variable”, indica que modificarla podría romper el código. Úsalo con cautela.
__internal_buffer =[]
¿Cómo reasignar y por qué importa?
Las variables se pueden reasignar para actualizar su valor con base en operaciones previas.
mi_variable =2mi_variable = mi_variable *5# Toma 2, calcula 10 y lo reasigna.print(mi_variable)# 10
Reasignar encapsula transformaciones paso a paso.
Mantén nombres claros para comunicar intención.
¿Qué reglas de nombres y palabras reservadas debes respetar?
Python es flexible, pero existen reglas que evitan errores de sintaxis y choques con el lenguaje.
Puede contener letras y números. Nunca comenzar con número.
No usar símbolos como $, &, % al inicio.
Para múltiples palabras, usa guion bajo: snake_case.
Evita palabras reservadas: no pueden ser nombres de variables.
Ejemplos prácticos:
23var =5# SyntaxError: no puede iniciar con número.global=23# SyntaxError: 'global' es palabra reservada.global_sales =34000# Válida: usa snake_case y no es reservada.
Buenas prácticas rápidas:
Escoge nombres descriptivos y concisos.
Usa guion bajo para separar palabras.
No reutilices palabras reservadas.
¿Qué diferencia hay entre expresiones y enunciados y cuál es el orden de operaciones?
Una expresión se evalúa y produce un resultado. Un enunciado (statement) no se evalúa a valor, pero tiene efectos en el programa.
Expresión: 2 + 3, _age * 5.
Enunciado: asignación, print.
Entrada y salida: input y output forman parte del flujo del programa.
¿Cómo aplicar PEMDAS en Python?
El intérprete sigue un orden de operaciones sin ambigüedad: paréntesis, exponentes, multiplicación y división (izquierda a derecha), suma y resta (izquierda a derecha). Acrónimo: PEMDAS.
2+7/4# 3.75: primero división, luego suma.(2+7)/4# 2.25: paréntesis alteran la precedencia.
Consejo clave:
Usa paréntesis para que la intención sea explícita para humanos.
Aunque conozcas PEMDAS, los paréntesis mejoran la legibilidad.
¿Dónde practicar y verificar resultados?
El Interactive Shell de Python es ideal para experimentar rápidamente.
si alguien quiere guardar las palabras reservadas les dejo la imagen.
Estas si se pueden usar como variable, si las pones en minúscula:
False ----> false
None ----> none
True ----> true
Pero para qué hacernos a los rebeldes y complicarnos la vida...
Buen aporte, muchas gracias compañero
Para saber todas las palabras reservadas de Python.
from keyword import iskeyword, kwlist
print(kwlist)
o bien podemos preguntarle a python si es palabra reservada o keyword.
iskeyword("pass")
Buena esa
Hola, me funcionó haciendo primero import al modulo keyword. La sintaxis del comando fue un poco diferente así:
import keyword
keyword.iskeyword(‘global’)
Resultado obtenido: True
++**Puntos destacados:
**++
una variable que empieza con guion bajo ( "_" ) es PRIVADA
una variable toda en mayuscula es una CONSTANTE
variables que empiezan con doble guion bajo ( "__") SEÑAL DEL PROGRAMADOR PARA NO MODIFICAR LA VARIABLE
Las variables se pueden reasignar
No pueden comenzar con numeros
No se pueden utilizar las palabras reservadas de Python como variable.
Excelente información clave de las variables!
Si alguien necesita ejercitar, pero no puede instalar Python. (Por ejemplo: porque no es su PC) pued utilizar esta pagina:
https://repl.it/languages/python3
Siempre la uso cuando estoy en la Universidad, gracias por la recomendación.
Muchas gracias por la recomendación! Soy nuevo en Python y tener esta página ayuda un montón.
Una variable es simplemente el contenedor de un valor. Es una forma de decirle a la computadora de que nos guarde un valor para luego usarlo.
Hay variables públicas, privadas y súper privadas
Python es un lenguaje dinámico, este concepto de privado y público se genera por convenciones del lenguaje.
En programación el signo = significa asignación.
El _ al inicio del nombre de una variable quiere decir que esa variable es privada. Ejemplo: _age = 20
El doble guion bajo al inicio del nombre de una variable quiere decir que esa variable no se puede modificar por nada del mundo. Ejemplo: __variable_importante = “no tocar”
Las variables en general pueden reasignarse o cambiarse el valor que contienen posteriormente
Si una variable esta en mayúscula, usualmente se refiere a una constante, no debería reasignarse o modificarse. Es una convención.
Reglas de Variables:
o Pueden contener números y letras
o No deben comenzar con número
o Múltiples palabras se unen con _
o No se pueden utilizar palabras reservadas por Python, las cuales son:
Una expresión es una combinación de valores, variables y operadores.
o El intérprete evalúa expresiones. Ejemplo: 2 + 2
Expresiones son instrucciones para el intérprete para que evalué la expresión.
Un enunciado (statements) es una unidad de código que tiene un efecto dentro del programa. Ejemplo: una asignación age = 20
Los enunciados tienen efectos dentro del programa, como print que genera un output.
Orden de operaciones (de arriba hacia abajo):
o Paréntesis
o Exponente
o Multiplicación
o División
o Adición
o Sustracción
Expresiones son instrucciones para el interprete para evaluar la expresión. Los enunciados tienen efectos dentro del programa, como print que genera un output.
No se pueden utilizar las palabras reservadas de Python como variable.
Se utiliza snake_case (guión bajo) para dividir las palabras de las variables multipalabra
Palabras reservadas del lenguaje:
| and | del | for | is | raise | assert |
| if | else | elif | from | lambda | return |
| break | global | not | try | class | except |
| or | while | continue | exec | import | yield |
| def | finally | in | print |
Convenciones en el nombre de las variables
No existen las variables privadas, y la reasignación es muy común en python, por lo que algo que nos puede proteger de no cometer errores graves en el uso de las variables es entender las convenciones de nombrado de variables que utilizan los programadores (ya que se puede nombrar una variable de diversas formas, pero eso no significa que se deba).
variables_regulares: snake_case
CONSTANTES: Una variable toda en mayuscula no debería de modificarse
_privada: Single Leading Underscore: _var : una variable que empieza con guion bajo ( “_” ) se deberá tratar como _privada y no se deberá de acceder fuera de la clase
__importante: Double Leading Underscore:__ variables que empiezan con doble guion bajo ( “__”) sonVariables importantes, si se llegara a modificar es provable que se pierda estabilidad del programa, así que mejor no tocarla mucho
var_: Single Trailing Underscore:var_: A veces, el nombre más apropiado para una variable lo toma una palabra clave. Por lo tanto, los nombres como class o def no se pueden usar como nombres de variables en Python. En este caso, puede agregar un solo guión bajo ("_") para romper el conflicto de nombres:
__main__: Double Leading and Trailing Underscore: __var__: Las variables rodeadas por un prefijo de subrayado doble y un postfix quedan reservadas por el intérprete de Python.
Asignaciones = Crea una variable y asigna un valor
_age = 20 #Cuando una variable empieza por ’ _ ’ es una variable privada
PI = 3.14159 #Cuando una variable esta en mayúscula significa que es una constante
__do_not_touch = “something important” #Cuando esta variable esta en doble guion bajo = significa que el codigo se puede romper
Re asignaciones de variables
my_var = 2
my_var = my_var * 5
print(my_var)
Variables y Expresiones
Las variables pueden contener números y letras
No pueden comenzar con numero
Multiples palabras se unen con _
No se pueden utilizar palabras reservadas
Gracias
No entiendo la diferencia con la curso anterior. Son iguales
De hecho! =/
Las diferencias son sutiles, diferencias en algunos comandos. como en los inputs, y los format de los print. y algunos otros mas.
Cuando dice “convenciones” se refiere que son reglas aceptadas por la gran mayoria de programadores para escribir codigo y asi entenderse mutuamente. Esto a su vez significa que las restricciones no las da el programa, sino que nosotros las ponemos para su mejor uso.
Una Variable la defino como una cajita donde almacenas datos.
These are the precedences.
Los Paréntesis ().
La potencia (**)
Operadores unarios (+ -)
Multiplicar y las divisiones (* % / //)
Suma y resta (+ -)
Operadores binarios AND (&)
Operadores binarios OR y XOR (| ^)
Operadores de comparación (< <= > >=)
Operadores de igualdad (<> == !=)
Operadores de asignación (=)
Operadores de pertenencia (in, in not)
Operadores lógicos (not, or, and)
__Orden_de_Operaciones = Paréntesis, Exponente, Multiplicación, División Adicción, Substracción.
No cambien esa variable de su mente 😃
Necesito hacer el entorno virtual con Visual Studio para trabajar con DJango?
¡Hola!
No tengo la menor idea :joy: pero, no parece muy complicado.
Estos links pueden ayudarte :):
How to create and manage Python environments in Visual Studio
How to select a Python environment for a project
Lo recomendable es que sí generes un entorno virtual sin importar el editor que tengas, te recomiendo seguir el tutorial de Django Girls que esta muy bien explicado. Versión en Español e ingles
En python las constantes son más una convención, esto quiere decir que a la "constante" PI, en realidad si la podemos volver a asignar.
El punto aqui es que PI no es una palabra reservada ... saludos!
def orden_de_operaciones(): orden ={'P':'Parentesis','E':'Exponentes','M':'Multiplicacion','D':'Division','A':'Adicion','S':'Substraccion'}print(orden['P'])print(orden['E'])print(orden['M'])print(orden['D'])print(orden['A'])print(orden['S'])orden_de_operaciones()```
Ejemplo de diccionario, bastante útil.
OJO: El código lo escribes para otros humanos y debemos aplicar las buenas prácticas para que lo puedan leer!
Así es, debemos aprender desde el incio a manejar las buenas practicas al momento de escribir el código, también porque pasaremos mas tiempo leyendo código.
Huyyy rayos!!! me decepciona un poco que las variables privadas y públicas así como las constantes sean todas de hecho variables públicas y que solo las convenciones nos ayuden a evitar meter la pata, pues la verdad si el interprete del lenguaje fuera capaz de detectar ese tipo de cosas eso nos facilitaría mucho la vida. (Java y Javascript me han mal acostumbrado)
En fin, de seguro hay muchas características invaluables en Python que ayuden a cubrir esas falencias.
Para eso puedes usar linterns como lo es PEP8.
gracias por la imagen de las palabras reservadas
¿Pordría decirse que el scope de las variables en Python se manejan similar a como lo hacen en Javascript?
Algo similar, aunque no idéntico. Los dos lenguajes manejan el concepto de this en los objetos de manera diferente.