Python case 2 - biblioteca de tortugas para dibujar pentagrama V_6.0

Hola a todos, soy bolas de zanahoria con col

La vida es demasiado corta, Python es una canción

inserte la descripción de la imagen aquí
Dibujo Pentagrama V_6.0


importación de proyectos

Versión 6.0: use la función recursiva para lograr el dibujo de pentagramas repetidos

Análisis del proyecto - aclaración de ideas

  1. Analizar el problema: La parte computacional del problema de análisis
  2. Definición del problema: división de las partes de entrada, procesamiento y salida del problema (IPO)
  3. Diseño de algoritmos: el corazón de la sección computacional

Dibujo Pentagrama V_6.0

Aprendizaje de puntos de conocimiento: desde cero


función recursiva

  • La forma en que una definición de función llama a una función en sí misma se llama recursividad.

  • Capacidad para resolver problemas importantes de manera muy sucinta.

  • Cada vez que se llama a la función, los parámetros de la función se almacenarán temporalmente y no hay influencia mutua. Cuando se alcanza la condición de finalización, cada función finaliza la operación capa por capa. Al devolver el resultado del cálculo, preste atención a la construcción de la condición de terminación, de lo contrario, la recursividad no puede devolver el resultado normalmente.

def digui (num)				#定义递归函数
	print(num)				#输出当前教字
	if num>0:				#判断当前数字是否>0
		digui(nun-1)		#调用函数本身
	else:
		print('----')
	print (num)				#再次输出当前数字
digui(3)
#运行过程
digui (3)
	print (3)
	if 3>0:
 		digui (2):		#调用函数本身
 		print(2)
		if 2>0
			digui(1) 	#调用函数木身
 			print (1if 1>0
 				digui (0):	#调用函数本身
 				print (0)
				if 0>0:
 				digui(num-1)	#调用函数本身
 				else :
 					print ('---')
 				print (0)
			print(1) 
 	print (2)
 print (3)

ventajas y desventajas de la recursividad

ventaja:

La recursividad hace que el código se vea más limpio y elegante

Las tareas complejas se pueden dividir en subproblemas más simples con la recursividad. Es más fácil usar la recursividad que usar algunas iteraciones anidadas.

defecto:

La lógica recursiva es difícil de depurar y seguir

Los algoritmos recursivos son menos eficientes para resolver problemas. En el proceso de llamada recursiva, el sistema abre una pila para almacenar el punto de retorno, la cantidad local, etc. de cada capa. La recursividad excesiva puede conducir fácilmente a un desbordamiento de pila, etc.

Programación práctica: práctica, deja que el programa se ejecute

código de referencia


"""
作者:白菜胡萝丸子
版本6.0:使用递归函数实现重复五角星的绘制
"""

import turtle


def pentagram(side_length):
    i = 0
    while i < 5:
        turtle.forward(side_length)
        turtle.right(144)
        i = i + 1
    side_length = side_length + 100
    if side_length <= 500:
        pentagram(side_length)


def main():
    turtle.speed(10)
    side = 100
    pentagram(side)

    turtle.exitonclick()


if __name__ == "__main__":
    main()

Resultados de la


Dibujar una estrella de cinco puntas


Llévelo al siguiente nivel: deje que el programa evolucione un poco

Además de las tortugas para dibujar gráficos, ¿hay algún otro método o biblioteca para dibujar gráficos en Python? Control de lienzo

Supongo que te gusta

Origin blog.csdn.net/coco264/article/details/123577060
Recomendado
Clasificación