python—科赫曲線(科赫雪花小包裹)


 

 

一、科赫曲線

運用遞歸,一階一階分隔,如2階的每條小線是1階(所以代碼為n-1)

import turtle

def koch(size,n):
    if n == 0:
        turtle.fd(size)
    else:
         for angle in [0,60,-120,60]:
             turtle.left(angle)
             koch(size/3,n-1)    

def main():
    turtle.setup(800,400)
    turtle.penup()
    turtle.goto(-300,-50)
    turtle.pendown()
    turtle.pensize(2)
    koch(600,3)       #3階,設置階數
    turtle.hideturtle()

main()

  

二、科赫雪花

 

import turtle

def koch(size,n):
    if n == 0:
        turtle.fd(size)
    else:
         for angle in [0,60,-120,60]:
             turtle.left(angle)
             koch(size/3,n-1)

def main():
    turtle.setup(800,800)
    turtle.penup()
    turtle.goto(-300,-50)
    turtle.pendown()
    turtle.pensize(2)
    level = 3
    koch(400,level)
    turtle.right(120)    #向右旋轉120度
    koch(400,level)
    turtle.right(120)
    koch(400,level)
    turtle.hideturtle()
main()

  

 

 

 

三、打包

ico在線制作或免費下載 https://www.easyicon.net/

cmd命令:進入文件所在目錄

pyinstaller -i bauble.ico -F koch.py         #bauble.ico 下載的圖標文件

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM