tutorial programacion imprimir español comentarios python loops while-loop

programacion - Por favor revisa el código del programa Python de mi muestra



programacion en python pdf (4)

Algunos comentarios útilmente útiles:

Use una docstring en lugar de un comentario para describir su función

def numtest(): """Use a docstring. This is the main part of the program. Explain what a function is and why you want to use it. (Because it gives you scope and lets you simplify a complex set of procedures into a single operation.)"""

Use un estilo consistente para su código e intente que sus alumnos lo sigan también.

Si no está completamente seguro de qué estilo seguir, use PEP-8 . (En su caso, existen diferencias en cómo trata el espacio en blanco en la misma operación en diferentes líneas).

print ("The number", int(c), "multiplied by itself equals",(int(c*c))) print("I am Python 3. I am really cool at maths!")

¿Por qué hacer una carroza aquí y una int más adelante?

Puede ser útil enseñar cómo las computadoras tratan las operaciones de coma flotante de forma diferente a las operaciones de enteros, pero eso no se ilustra realmente aquí.

c = float(c) print("The number", int(c), "multiplied by itself equals", (int(c*c)))

numtest dos veces en el ciclo

Pruebe esto en su lugar:

again = "y" while again == "y": numtest() again = input("Run again? y/n >>>") print("") # Take this out of the loop. print("Goodbye")

Todavía estoy aprendiendo Python porque quiero enseñar los conceptos esenciales del lenguaje a niños de once años (trabajo como profesor). Hemos hecho un poco de trabajo básico para que entiendan lo esencial de la programación y la división de tareas en porciones y cosas por el estilo. Python es el idioma que se va a enseñar en todo el Reino Unido con el nuevo plan de estudios y no quiero enseñar malos hábitos a los niños. Debajo hay un pequeño programa que he escrito, sí, sé que es malo, pero cualquier consejo sobre mejoras sería muy apreciado.

Todavía estoy repasando tutoriales sobre el idioma, así que por favor sean amables. : o)

# This sets the condition of x for later use x=0 # This is the main part of the program def numtest(): print ("I am the multiplication machine") print ("I can do amazing things!") c = input ("Give me a number, a really big number!") c=float(c) print ("The number", int(c), "multiplied by itself equals",(int(c*c))) print("I am Python 3. I am really cool at maths!") if (c*c)>10000: print ("Wow, you really did give me a big number!") else: print ("The number you gave me was a bit small though. I like bigger stuff than that!") # This is the part of the program that causes it to run over and over again. while x==0: numtest() again=input("Run again? y/n >>>") if x=="y": print("") numtest() else: print("Goodbye")


Como deseas enseñar un buen estilo:

  1. No use nombres de variables como x menos que esté creando un gráfico. Ver PEP008 para nombrar convenciones y estilo.

  2. Sea consistente con sus espacios:

    c = input ("Give me a number, a really big number!") c=float(c)

no es consistente ¿Cuál es mejor estilo?

Si realmente quieres un bucle infinito, entonces:

while True: numtest() again = input("Run again? y/n >>>") if again.lower().startswith("n"): print("Goodbye") break

Entonces, de nuevo, algunas personas piensan que usar el break es malo, ¿estás de acuerdo? ¿Cómo reescribirías el ciclo para que no se use el break? Un ejercicio para sus estudiantes tal vez?


Parece que no necesitas la variable x

while True: numtest() again = input("Run again? y/n >>>") if again == "y": # test "again", not "x" print("") else: print("Goodbye") break # This will exit the while loop


tienes que romper el ciclo

tu tiempo debe ser

mientras que == ''y'':

de este modo

again = ''y'' def numtest(): print ("I am the multiplication machine") print ("I can do amazing things!") c = input("Give me a number, a really big number!") c = float(c) print ("The number", int(c), "multiplied by itself equals", (int(c * c))) print("I am Python 3. I am really cool at maths!") if (c * c) > 10000: print ("Wow, you really did give me a big number!") else: print ("The number you gave me was a bit small though. I like bigger stuff than that!") # This is the part of the program that causes it to run over and over again. while again == ''y'': numtest() again = input("Run again? y/n >>>") if again != "y": print("Goodbye")