Conceptos Básicos de Python

Todos necesitamos empezar en algún lugar, así que ¿por qué no hacerlo aquí? Esta guía cubre los conceptos básicos fundamentales de Python, incluyendo operadores, tipos de datos, variables y funciones principales.

Resumen de Conceptos Básicos de Python

Los conceptos básicos de Python que todo principiante debe conocer:

  • Variables y tipos básicos
  • Operadores y expresiones
  • Cadenas (Strings) y métodos comunes
  • Listas, tuplas y diccionarios
  • Flujo de control básico (if, for, while)
  • Funciones simples

Operadores Matemáticos

De mayor a menor precedencia:

OperadoresOperaciónEjemplo
**Exponenciación2 ** 3 = 8
%Módulo/Resto22 % 8 = 6
//División entera22 // 8 = 2
/División22 / 8 = 2.75
*Multiplicación3 * 3 = 9
-Resta5 - 2 = 3
+Suma2 + 2 = 4

Ejemplos de expresiones:

# La multiplicación tiene mayor precedencia que la suma
# Así que esto se evalúa como: 2 + (3 * 6) = 2 + 18 = 20
2 + 3 * 6
20
# Los paréntesis anulan la precedencia de los operadores
# Esto se evalúa como: 5 * 6 = 30
(2 + 3) * 6
30
2 ** 8
256
23 // 7
3
23 % 7
2
(5 - 1) * ((7 + 1) / (3 - 1))
16.0
Quiz

Inicia sesión para responder este quiz y rastrear tu progreso de aprendizaje

¿Cuál es el resultado de esta expresión de Python?
4 + 2 * 3
A. 10
B. 18
C. 12
D. 20

Operadores de Asignación Aumentada

OperadorEquivalente
var += 1var = var + 1
var -= 1var = var - 1
var *= 1var = var * 1
var /= 1var = var / 1
var //= 1var = var // 1
var %= 1var = var % 1
var **= 1var = var ** 1

Ejemplos:

# Asignación aumentada: equivalente a greeting = greeting + ' world!'
greeting = 'Hello'
greeting += ' world!'
greeting
'Hello world!'
# Incrementar un número en 1
number = 1
number += 1
number
2
# Replicar elementos de una lista: equivalente a my_list = my_list * 3
my_list = ['item']
my_list *= 3
my_list
['item', 'item', 'item']
Quiz

Inicia sesión para responder este quiz y rastrear tu progreso de aprendizaje

¿Cuál es el valor de x después de ejecutar este código?
x = 5
x += 3
A. 3
B. 8
C. 5
D. 15

Operador Walrus (Morsa)

El Operador Walrus permite la asignación de variables dentro de una expresión mientras devuelve el valor de la variable.

Ejemplo:

# El operador Walrus asigna y devuelve el valor en una sola expresión
# my_var se asigna "Hello World!" y luego se imprime
print(my_var:="Hello World!")
Hello World!
my_var="Yes"
print(my_var)
Yes
print(my_var:="Hello")
Hello

El Operador Walrus, u Operador de Expresión de Asignación, fue introducido por primera vez en 2018 a través de PEP 572, y luego lanzado oficialmente con Python 3.8 en octubre de 2019.

Sintaxis Semántica y Ejemplos

El PEP 572 proporciona la sintaxis, semántica y ejemplos para el Operador Walrus.

Tipos de Datos

Comprender los tipos de datos es uno de los conceptos básicos más importantes de Python. Python tiene nueve tipos de datos integrados principales que cubren casi todo lo que necesitarás:

Tipo de DatoEjemplosDescripción
Números
int-2, -1, 0, 1, 2, 3, 4, 5Números enteros
float-1.25, -1.0, -0.5, 0.0, 0.5, 1.0, 1.25Números con punto decimal
complex2+3j, complex(1, 4)Números con partes real e imaginaria
Texto
str'a', 'Hello!', "Python"Texto y caracteres
Booleano
boolTrue, FalseValores Verdadero o Falso
None
NoneTypeNoneRepresenta “ningún valor” o “nada”
Colecciones
list[1, 2, 3], ['a', 'b', 'c']Colecciones ordenadas y modificables
dict{'name': 'Alice', 'age': 30}Pares clave-valor
tuple(1, 2, 3), ('a', 'b')Colecciones ordenadas e inmutables
set{1, 2, 3}, {'a', 'b', 'c'}Colecciones desordenadas de elementos únicos

Ejemplos Rápidos

# Números
age = 25                    # int
price = 19.99              # float
coordinate = 2 + 3j        # complex

# Texto
name = "Alice"             # str

# Booleano
is_student = True          # bool

# None
result = None              # NoneType

# Colecciones
scores = [85, 92, 78]      # list
person = {'name': 'Bob', 'age': 30}  # dict
coordinates = (10, 20)     # tuple
unique_ids = {1, 2, 3}     # set

Para una guía completa con ejemplos visuales y explicaciones detalladas sobre cuándo usar cada tipo, consulte: Tipos de Datos en Python: Una Guía Visual para Principiantes.

Concatenación y Replicación

Concatenación de cadenas (strings):

# Concatenación de cadenas: las cadenas adyacentes se unen automáticamente
'Alice' 'Bob'
'AliceBob'

Replicación de cadenas:

# Replicación de cadenas: repite la cadena varias veces
'Alice' * 5
'AliceAliceAliceAliceAlice'

Variables

Las variables son una parte fundamental de los conceptos básicos de Python. Puedes nombrar una variable como quieras siempre que obedezca las siguientes reglas:

  1. Solo puede ser una palabra.
# mal
my variable = 'Hello'

# bien
var = 'Hello'
  1. Solo puede usar letras, números y el carácter de guion bajo (_).
# mal
%$@variable = 'Hello'

# bien
my_var = 'Hello'

# bien
my_var_2 = 'Hello'
  1. No puede comenzar con un número.
# esto no funcionará
23_var = 'hello'
  1. Un nombre de variable que comienza con un guion bajo (_) se considera “no útil” (o interno).
# _spam no debe usarse más en el código
_spam = 'Hello'
Quiz

Inicia sesión para responder este quiz y rastrear tu progreso de aprendizaje

En los conceptos básicos de Python, ¿cuál de los siguientes es un nombre de variable válido?
A. 3value
B. user-name
C. user_name
D. for

Comentarios

Comentario en línea:

# Este es un comentario

Comentario multilínea:

# Este es un
# comentario multilínea

Código con un comentario:

a = 1  # inicialización

Tenga en cuenta los dos espacios delante del comentario.

Docstring de función:

def foo():
    """
    Este es un docstring de función
    También puedes usar:
    ''' Docstring de Función '''
    """

La Función print()

La función print() es uno de los primeros conceptos básicos de Python que aprenderás. Escribe el valor de los argumentos que se le pasan. […] maneja múltiples argumentos, cantidades de punto flotante y cadenas. Las cadenas se imprimen sin comillas, y se inserta un espacio entre los elementos, para que puedas formatear las cosas de manera agradable:

print('Hello world!')
Hello world!
a = 1
print('Hello world!', a)
Hello world! 1

La palabra clave end

El argumento de palabra clave end se puede usar para evitar el salto de línea después de la salida, o para terminar la salida con una cadena diferente:

# Usa el parámetro end para cambiar lo que viene después de cada instrucción print
phrase = ['printed', 'with', 'a', 'dash', 'in', 'between']
for word in phrase:
    print(word, end='-')  # Usa '-' en lugar de salto de línea
printed-with-a-dash-in-between-

La palabra clave sep

La palabra clave sep especifica cómo separar los objetos, si hay más de uno:

# Usa el parámetro sep para especificar el separador entre múltiples argumentos
print('cats', 'dogs', 'mice', sep=',')  # Salida separada por comas
cats,dogs,mice

La Función input()

Esta función toma la entrada del usuario y la convierte en una cadena (string):

# input() lee la entrada del usuario y la devuelve como una cadena
print('What is your name?')   # pide su nombre
my_name = input()  # Espera a que el usuario escriba y presione Enter
print('Hi, {}'.format(my_name))
What is your name?
Martha
Hi, Martha

input() también puede establecer un mensaje predeterminado sin usar print():

my_name = input('What is your name? ')  # mensaje predeterminado
print('Hi, {}'.format(my_name))
What is your name? Martha
Hi, Martha

También es posible usar cadenas formateadas para evitar el uso de .format:

# input() puede mostrar un mensaje de indicación directamente
my_name = input('What is your name? ')  # Indicación y lectura en una sola llamada
print(f'Hi, {my_name}')  # f-string para formateo de cadenas
What is your name? Martha
Hi, Martha
Quiz

Inicia sesión para responder este quiz y rastrear tu progreso de aprendizaje

En los conceptos básicos de Python, ¿qué tipo devuelve `input()`?
A. int
B. str
C. float
D. Depende de la entrada del usuario

La Función len()

Se evalúa al valor entero del número de caracteres en una cadena, lista, diccionario, etc.:

# len() devuelve el número de caracteres en una cadena
len('hello')  # Devuelve 5
5
# len() devuelve el número de elementos en una lista
len(['cat', 3, 'dog'])  # Devuelve 3 (tres elementos)
3

Prueba de Vacío

La prueba de si las cadenas, listas, diccionarios, etc., están vacíos no debe usar len, sino preferir la evaluación booleana directa.

Ejemplo de prueba de vacío:

a = [1, 2, 3]

# mal: comprobación de len() innecesaria
if len(a) > 0:  # se evalúa como True
    print("the list is not empty!")
the list is not empty!
# bien: evaluación booleana directa (forma Pythonica)
if a:  # se evalúa como True si la lista no está vacía
    print("the list is not empty!")
the list is not empty!

Las Funciones str(), int(), y float()

Estas funciones le permiten cambiar el tipo de una variable. Por ejemplo, puede transformar de un integer o float a un string:

# Convertir entero a cadena
str(29)  # Devuelve '29'
'29'
str(-3.14)
'-3.14'

O de una string a un integer o float:

# Convertir cadena a entero
int('11')  # Devuelve 11
11
# Convertir cadena a flotante
float('3.14')  # Devuelve 3.14
3.14
Quiz

Inicia sesión para responder este quiz y rastrear tu progreso de aprendizaje

¿Cuál es el resultado de este código de Python?
result = int('42')
type(result)
A. str
B. float
C. int
D. NoneType

Enlaces Relevantes