""

viernes, 3 de abril de 2026

Programa de un segundo curso de Fundamentos de Python

 badge

Diferencias entre método y función

Un método es un tipo específico de función - se comporta como una función y se parece a una función, pero difiere en la forma en que actúa y en su estilo de invocación.

Una función no pertenece a ningún dato - obtiene datos, puede crear nuevos datos y (generalmente) produce un resultado.

Un método hace todas estas cosas, pero también puede cambiar el estado de una entidad seleccionada.

Un método es propiedad de los datos para los que trabaja, mientras que una función es propiedad de todo el código.

Esto también significa que invocar un método requiere alguna especificación de los datos a partir de los cuales se invoca el método.

Puede parecer desconcertante aquí, pero lo trataremos en profundidad cuando profundicemos en la programación orientada a objetos.

En general, una invocación de función típica puede tener este aspecto:

result = function(arg)
 

La función toma un argumento, hace algo, y devuelve un resultado.

Una invocación de un método típico usualmente se ve así:

result = data.method(arg)
 

Nota: el nombre del método está precedido por el nombre de los datos que posee el método. A continuación, se agrega un punto, seguido del nombre del método y un par de paréntesis que encierran los argumentos.

El método se comportará como una función, pero puede hacer algo más - puede cambiar el estado interno de los datos a partir de los cuales se ha invocado.

Puedes preguntar: ¿por qué estamos hablando de métodos, y no de listas?

Este es un tema esencial en este momento, ya que le mostraremos como agregar nuevos elementos a una lista existente. Esto se puede hacer con métodos propios de las listas, no por funciones.


La función len()

La longitud de una lista puede variar durante la ejecución. Se pueden agregar nuevos elementos a la lista, mientras que otros pueden eliminarse de ella. Esto significa que la lista es una entidad muy dinámica.

Si deseas verificar la longitud actual de la lista, puedes usar una función llamada len() (su nombre proviene de length - longitud).

La función toma el nombre de la lista como un argumento y devuelve el número de elementos almacenados actualmente dentro de la lista (en otras palabras - la longitud de la lista).

Observa la última línea de código en el editor, ejecuta el programa y verifica que valor imprimirá en la consola. ¿Puedes adivinar?

>>numbers = [10, 5, 7, 2, 1]

>>print("Contenido de la lista original:", numbers)  # Imprimiendo el contenido de la lista original.

>>numbers[0] = 111

>>print("\nContenido de la lista con cambio:", numbers)  # Imprimiendo contenido de la lista con 111.

>>numbers[1] = numbers[4]  # Copiando el valor del quinto elemento al segundo elemento.

>>print("Contenido de la lista con intercambio:", numbers)  # Imprimiendo contenido de la lista con intercambio.

>>print("\nLongitud de la lista:", len(numbers))  # Imprimiendo la longitud de la lista.

Console sync
Contenido de la lista original: [10, 5, 7, 2, 1]

Contenido de la lista con cambio: [111, 5, 7, 2, 1]
Contenido de la lista con intercambio: [111, 1, 7, 2, 1]

Longitud de la lista: 5


3.2.17 Quiz de sección while, for, continue, break, if, else

 Pregunta 1: Crea un bucle for que cuente de 0 a 10, e imprima números impares en la pantalla.

>>for i in range(1, 11):
>> if i % 2 == 0:
>> continue
>>  print(i)
>>    # Línea de código.
>>        # Línea de código.

>>>
1
3
5
7
9

Pregunta 2: Crea un bucle while que cuente de 0 a 10, e imprima
números impares en la pantalla.

>>i = 0
>>while i < 11:
>>  if i %2 != 0:
>>    print(i)
>>  i = i+1

>>>
1
3
5
7
9
Pregunta 3: Crea un programa con un bucle for y una sentencia break.
El programa debe iterar sobre los caracteres en una dirección de correo electrónico,
salir del bucle cuando llegue al símbolo @ e imprimir la parte antes de @ en una línea.

>>e_mail = input("Ingrese una dirección de correo electrónico: ")
>>for i in e_mail:
>>  if i == "@":
>>    break
>>  print(i, end="")

>>>
Ingrese una dirección de correo electrónico: pythonparaingenieros@gmail.com
pythonparaingenieros


Pregunta 4: Crea un programa con un bucle for y una sentencia continue.
El programa debe iterar sobre una cadena de dígitos, reemplazar cada 0 con x,
e imprimir la cadena modificada en la pantalla.
>>for digit in "0165031806510":
>>    if digit == "0":
>>        print("x", end="")
>>        continue
>>    print(digit, end="")    

>>>
x165x318x651x

Pregunta 5: ¿Cuál es la output del siguiente código?

>>n = 3
 
>>while n > 0:     # primera iteración 3 > 0 ; segunda: 2>0; tercera: 1>0
>>    print(n + 1) # se imprime 4; se imprime 3; se imprime 2
>>    n -= 1       # se le resta una unidad a n, es decir n =2; n=1; n= 0
>>else:
>>    print(n)     # cuarta iteración imprime 0

>># entonces la salida debería ser la siguiente:
>># 4
>># 3
>># 2
>># 0

>>>
4
3
2
0

Pregunta 6: ¿Cuál es la output del siguiente código?

>>n = range(4)
 
>>for num in n:          # 0, 1, 2, 3
>>    print(num - 1)     # -1, 0, 1, 2
>>else:
>>    print(num)         # 3

>>>
-1
0
1
2
3

Pregunta 7: ¿Cuál es la output del siguiente código?

>>for i in range(0, 6, 3): # val_min= 0; val_max=6; incrementos = 3
>>    print(i)             # 0, 3,

>>>
0
3

Resumen de sección while & For

 3.2.16 RESUMEN DE SECCIÓN


1. Existen dos tipos de bucles en Python: while y for:

  • El bucle while ejecuta una sentencia o un conjunto de sentencias siempre que una condición booleana especificada sea verdadera, por ejemplo:
# Ejemplo 1
while True:
    print("Atrapado en un bucle infinito.")
 
# Ejemplo 2
counter = 5
while counter > 2:
    print(counter)
    counter -= 1
 
  • El bucle for ejecuta un conjunto de sentencias muchas veces; se usa para iterar sobre una secuencia (por ejemplo, una lista, un diccionario, una tupla o un conjunto; pronto aprenderás sobre ellos) u otros objetos que son iterables (por ejemplo, cadenas). Puedes usar el bucle for para iterar sobre una secuencia de números usando la función incorporada range. Mira los ejemplos a continuación:
# Ejemplo 1
word = "Python"
for letter in word:
    print(letter, end="*")
 
# Ejemplo 2
for i in range(1, 10):
    if i % 2 == 0:
        printprint(i)
 

2. Puedes usar las sentencias break y continue para cambiar el flujo de un bucle:

  • Utiliza break para salir de un bucle, por ejemplo:
text = "OpenEDG Python Institute
for letter in text:
    if letter == "P":
        break
    print(letter, end="")
 
  • Utiliza continue para omitir la iteración actual, y continuar con la siguiente iteración, por ejemplo:
text = "pyxpyxpyx
for letter in text:
    if letter == "x":
        continue
    print(letter, end="")
 

3. Los bucles while y for también pueden tener una cláusula else en Python. La cláusula else se ejecuta después de que el bucle finalice su ejecución siempre y cuando no haya terminado con break, por ejemplo:

n = 0
 
while n != 3:
    print(n)
    n += 1
else:
    print(n, "else")
 
print()
 
for i in range(0, 3):
    print(i)
else:
    print(i, "else")
 

4. La función range() genera una secuencia de números. Acepta enteros y devuelve objetos de rango. La sintaxis de range() tiene el siguiente aspecto: range(start, stop, step), donde:

  • start es un parámetro opcional que especifica el número de inicio de la secuencia (0 por defecto)
  • stop es un parámetro opcional que especifica el final de la secuencia generada (no está incluido).
  • step es un parámetro opcional que especifica la diferencia entre los números en la secuencia es (1 por defecto.)

Código de ejemplo:

for i in range(3):
    print(i, end=" ")  # output: 0 1 2
 
for i in range(6, 1, -2):
    print(i, end=" ")  # output: 6, 4, 2
 

Entradas recientes

Programa de un segundo curso de Fundamentos de Python

  PE2: Módulo 1. Módulos, Paquetes, y PIP PE2: Módulo 2. Cadenas, Métodos de Cadenas y listas, Excepciones PE2: Módulo 3. Programación Orien...

Entradas Populares