Aprender a programar en python

Resuelto
Usuario anónimo -  
mamiemando Mensajes publicados 33228 Fecha de registro   Estado Moderador Última intervención   -

Hola,

quiero aprender a usar Python, ¿podría usted por favor explicarme el bucle while y for, y cómo debo hacer para "crear un programa" que muestre en el terminal una tabla de multiplicar? gracias

8 respuestas

Chatmalin21 Mensajes publicados 1 Estado Miembro 1
 

Hola,

Te aconsejo que busques un curso de python para entender las bases.

1
georges97 Mensajes publicados 14549 Fecha de registro   Estado Colaborador Última intervención   2 912
 

Hola,
 

Eso es lo que muchos de nosotros hemos aconsejado, sin éxito. No se aprende a programar chateando en un foro. Es un recurso en caso de bloqueo, después de haber integrado las bases del lenguaje.
 

Los sitios dedicados (ver más arriba) están hechos para eso e integran glosarios y definiciones de las funciones y otras palabras clave, así como ejemplos, a veces interactivos, para cada concepto..

0
georges97 Mensajes publicados 14549 Fecha de registro   Estado Colaborador Última intervención   2 912
 

Hola,

Un foro no es el medio ideal para el aprendizaje completo de un lenguaje, una pregunta básica lleva a otra, mientras que existen cursos completos y progresivos, especialmente sobre python.

ver:

https://www.python-lycee.com/parcours-apprentissage

https://www.irif.fr/~sangnier/enseignement/16-17/Ip1-Python/IP1-Python-cours-td-1-4.pdf

https://python.sdv.u-paris.fr/cours-python.pdf

0
mamiemando Mensajes publicados 33228 Fecha de registro   Estado Moderador Última intervención   7 940
 

Hola,

La pregunta que planteas es una pregunta básica, por lo que solo puedo aconsejarte que mires rápidamente un curso de python, ¿por qué no este?

También te recomiendo encarecidamente que leas esto antes de pedir ayuda para un ejercicio. Sería bueno, en particular, mostrar lo que has comenzado a hacer y explicarnos lo que te bloquea.

Regresando a tu pregunta. Un programa es una secuencia de instrucciones. Sin duda sabes que puedes escribir un mensaje con la función print. Aquí tienes, por ejemplo, un programa de python muy simple:

print("Tabla de multiplicación")

Veamos ahora cómo mostrar una cadena que depende de dos múltiplos (digamos a y b). Hay varias sintaxis en python:

  • La más simple:
a = 2 b = 3 print(a, " * ", b, " = ", a * b)
  • Las f-strings:
a = 2 b = 3 print(f"{a} * {b} = {a * b}")

Ambas son perfectamente válidas, tú eliges la que quieras.

Ahora, veamos cómo hacer un bucle. En el caso de las tablas de multiplicaciones, el número de iteraciones se conoce antes de entrar en el bucle, por lo que un bucle for es más adecuado que un bucle while. Y la ventaja de un bucle for es que, por diseño y gracias a ciertas restricciones impuestas por python, se evita la mayor parte del tiempo escribir un bucle infinito por accidente (a diferencia de los bucles while). Un bucle for permite actualizar una variable al recorrer un iterable, por ejemplo, una secuencia de valores (llamada range en python). En python:

  • range(n) significa contar de 0 incluido a n excluido, con un paso de 1
  • range(n0, n) significa contar de n0 incluido a n excluido, con un paso de 1 (debe cumplirse que n0 <= n0)
  • range(n1, n2, s) significa contar de n1 a n2 excluido, con un paso de s (debe cumplirse que s sea distinto de cero y que n1 < n2 si s > 0 o que n1 > n2 si s < 0).

Aquí queremos contar de 1 incluido a 10 excluido, por lo que lo que necesitamos es range(1, 10) (que también se escribe como range(1, 10, 1)). Aquí tienes un programa que muestra esos valores:

for a in range(1, 10): print("a =", a)

... o también:

for a in range(1, 10): print(f"a = {a}")

Llamemos a esta variable a. Luego hay que multiplicar a por b, donde b es el múltiplo considerado en la tabla.

Ahora tienes todos los elementos para terminar tu ejercicio.

Buena suerte

0
Usuario anónimo
 

¿Podrías recomendarme un libro para principiantes, ya que no tengo ninguna base en Python? A pesar de tu explicación, todavía no logro encontrar la solución :/

0
PierrotLeFou > Usuario anónimo
 

No tengo un libro que sugerir, pero el siguiente sitio:

https://zestedesavoir.com/tutoriels/2514/un-zeste-de-python/

1
Usuario anónimo > PierrotLeFou
 

ok gracias, voy a ver

0
Usuario anónimo > PierrotLeFou
 

pequeña pregunta, ¿cuántas estructuras existen en python? ¿Cuáles son sus nombres, por favor? Gracias por su ayuda.

0
blux Mensajes publicados 5021 Fecha de registro   Estado Moderador Última intervención   3 455 > Usuario anónimo
 

Hola,

¿estructuras de datos, pruebas...?

0
PierrotLeFou
 

¿Hablamos de estructuras de datos o de estructuras de programas?

0
Usuario anónimo
 

¿Son los bucles while y for "estructuras"?

0
blux Mensajes publicados 5021 Fecha de registro   Estado Moderador Última intervención   3 455 > Usuario anónimo
 

¿Son los bucles while y for "estructuras"?

Sí, son estructuras de control del programa, como if then else...

0
Usuario anónimo > blux Mensajes publicados 5021 Fecha de registro   Estado Moderador Última intervención  
 

Hola, ¿puedes explicarme qué es una "salida de código"? Gracias :)

0
PierrotLeFou > Usuario anónimo
 

Tu expresión es demasiado vaga.

¿Es sobre cómo salir del programa o de un bucle?

¿O cómo mostrar algo (incluido el propio código)?

0
Castoramoi Mensajes publicados 400 Fecha de registro   Estado Miembro Última intervención   22
 

Hola

https://www.w3schools.com/python/default.asp


0
plouf
 

Hola,

También hay un tutorial en el sitio de Python y en francés.

https://docs.python.org/fr/3/tutorial/index.html

0
mamiemando Mensajes publicados 33228 Fecha de registro   Estado Moderador Última intervención   7 940
 

Hola a todas y a todos,

@todos: Si desean sugerir referencias, por favor propónganlas preferiblemente en el otro hilo de discusión que 17159642 ha abierto.

17159642

  • Creo que el mensaje #1 responde suficientemente al problema inicial, pero si no está lo suficientemente claro, no dudes en pedir aclaraciones.
  • Gracias por asegurarte de mantenerte en esta cuestión inicial. Si tienes otras preguntas, abre una nueva discusión (evita iniciar nuevos temas de discusión como hiciste en #3, #14 a menos, por supuesto, que tenga una relación directa con la discusión).
  • Además, te invito a acostumbrarte a buscar las respuestas por ti mismo antes de hacer preguntas. No es que no queramos responderte, sino que es un ejercicio al que nos enfrentamos regularmente cuando desarrollamos, así que mejor tomar el hábito desde el principio.

Buena continuación

0
Castoramoi Mensajes publicados 400 Fecha de registro   Estado Miembro Última intervención   22
 

No programo en Python, pero en lo que respecta a las instrucciones while y for, ¡debe ser como en otros lenguajes, pienso!

"while" significa que mientras la condición sea verdadera, repetir la acción

"for" significa que mientras la condición no se haya alcanzado, se continúa con el bucle...


0
blux Mensajes publicados 5021 Fecha de registro   Estado Moderador Última intervención   3 455
 

.

"para" mientras la condición no se haya cumplido entonces seguimos con el bucle...

Pero no, precisamente, el bucle "for" es algo con un número de ocurrencias definido de antemano.

De lo que hablas sería más bien un "hacer... mientras".

0
blux Mensajes publicados 5021 Fecha de registro   Estado Moderador Última intervención   3 455 > Castoramoi Mensajes publicados 400 Fecha de registro   Estado Miembro Última intervención  
 

No es limpio, si ya está previsto: do while o repeat until (0-n o 1-n).

0
mamiemando Mensajes publicados 33228 Fecha de registro   Estado Moderador Última intervención   7 940 > blux Mensajes publicados 5021 Fecha de registro   Estado Moderador Última intervención  
 

Solo para aclarar

  • En Python un bucle for se utiliza para hacer que una variable evolucione en un bucle de acuerdo a un iterable.
    for i in range(10): print(i)
    Por lo tanto, no es como en Java, C o C++, ya que en estos lenguajes el bucle for clásico considera una inicialización, una prueba para permanecer en el bucle y una instrucción a ejecutar al final del bucle
    for (int i = 0; i < 10; i++) { printf("%d\n", i) }
  • En Python/C/C++/Java, un bucle while ejecuta un bloque de instrucciones si y solo si su condición se verifica. Este bloque se repite si y solo si la condición se mantiene verdadera. 
    i = 0 while i < 10: print(i) i += 1
  • En C/C++/Java, un bucle do while ejecuta al menos una vez un bloque de instrucciones y lo repite si y solo si su condición se verifica. Este tipo de bucle no existe en Python (hay que ingeniárselas con un bucle while).

Buena suerte

0
Usuario anónimo > mamiemando Mensajes publicados 33228 Fecha de registro   Estado Moderador Última intervención  
 

Hola, gracias por tu explicación,

tengo que programar el juego de tres en raya y estoy en la etapa en la que debo crear la cruz y el círculo. ¿Quién puede ayudarme? ¡Gracias! :)

0
mamiemando Mensajes publicados 33228 Fecha de registro   Estado Moderador Última intervención   7 940 > Usuario anónimo
 

Hola,

Gracias :-)

0