首页
/
每日頭條
/
科技
/
python畫蝸牛号
python畫蝸牛号
更新时间:2025-12-14 11:19:17
介紹

用遞歸和Turtle庫繪制八進制的雪花。以下是遞歸深度從1~5的八面形雪花:

python畫蝸牛号(少兒學編程系列---使用遞歸畫雪花)1

除了通過遞歸深度停止遞歸,還可以在半徑小于特定大小時停止遞歸。以下八面形雪花是通過将半徑遞歸的阈值設置為10生成的。現在你可以看到所有的八邊形都有相同的尺寸

python畫蝸牛号(少兒學編程系列---使用遞歸畫雪花)2

源代碼

import turtle from turtle import * import math import random # 以指定的中心,畫八面形 def octagon(x, y, r): # x,y is the center up() goto(x, y) seth(90) fd(r) left(180 - 135 / 2) down() begin_fill() edgeSize = 2 * r * math.sin(math.radians(45 / 2)) for _ in range(8): fd(edgeSize) left(45) end_fill() # 畫八面形雪花 def octaflake(x, y, r, n): # 根據遞歸深度(recursion depths)控制何時退出遞歸 # if n ==1: # octagon(x, y, r) # return # 根據八面形的半徑控制,當半徑小于10時,退出遞歸 if r < 10: octagon(x, y, r) return r2 = r / (1 1 / math.tan(math.radians(45 / 2))) octaflake(x, y, r - 2 * r2, n - 1) direction = 90 for _ in range(8): up() goto(x, y) seth(direction) fd(r - r2) octaflake(xcor(), ycor(), r2, n - 1) direction = 45 def main(): screen = Screen() screen.setup(800, 600) screen.title('cloudcloder出品--畫雪花') bgcolor('royal blue') fillcolor('white') pencolor('steel blue') speed(0) screen.tracer(0, 0) octaflake(-200, -200, 70, 1) octaflake(-50, -50, 80, 2) octaflake(-190, 100, 50, 3) octaflake(200, 100, 80, 4) octaflake(-190, 200, 50, 3) octaflake(-190, 0, 50, 3) octaflake(180, -140, 120, 5) screen.update() done() if __name__ == "__main__": hideturtle() up() goto(-260, 270) write("今日頭條-cloudcoder出品", align='left', font=('fangsong', 14, 'normal')) showturtle() main()

,
Comments
Welcome to tft每日頭條 comments! Please keep conversations courteous and on-topic. To fosterproductive and respectful conversations, you may see comments from our Community Managers.
Sign up to post
Sort by
Show More Comments
推荐阅读
補水保濕修護皮膚屏障面霜推薦
補水保濕修護皮膚屏障面霜推薦
高效滋養修複的面霜測評推薦:讓你的肌膚補足水分,有效提亮膚色!海底之謎面霜經典貴婦面霜,除了貴簡直就沒有任何缺點了。面霜更适合幹皮與敏感肌,能夠有效補充水分與肌膚所缺失的營養。屬于乳霜質地,不會有負重感,春夏秋冬都能夠适用,在我們的日常中可...
2025-12-14
應用語言專業調劑
應用語言專業調劑
對于大部分考研黨來說,面對考研調劑就是一臉茫然!不管你是被卷來調劑的高分黨還是剛過國家線的擦線黨,都要好好準備!一定要把調劑流程和調劑信息都了解清楚!本文就給大家分享關于語言學專業的調劑經驗和往年調劑信息!覺得有用請點贊吖!一、語言學及應用...
2025-12-14
ui設計用什麼軟件比較簡單
ui設計用什麼軟件比較簡單
正所謂“工欲善其事,必先利其器”,想要成為一個優秀的UI設計師,你必須熟練掌握各種工具。但很多剛入行的小夥伴并不清楚做UI設計會用到哪些軟件?今天的千鋒武漢UI設計培訓小編就給大家介紹一些常用的設計軟件。8、思維導圖思維導圖,即Mindje...
2025-12-14
電腦有藍牙功能嗎
電腦有藍牙功能嗎
電腦有藍牙功能嗎?部分電腦有的可以通過查看”我的電腦“屬性,找到”設備管理器“來确認自己的電腦是否具備藍牙功能,接下來我們就來聊聊關于電腦有藍牙功能嗎?以下内容大家不妨參考一二希望能幫到您!電腦有藍牙功能嗎部分電腦有的。可以通過查看”我的電...
2025-12-14
雲端智能雙臂服務機器人m3
雲端智能雙臂服務機器人m3
STEAM機器人的承諾已經存在多年,它據稱可以提高兒童對科學、技術、工程、藝術和數學(STEAM)的興趣。市場上充斥着來自模仿者的産品。許多廠商已經消逝了,但投資者的興趣并沒有消失,至少對一家來自中國的公司來說是這樣。Keyi科技公司以其模...
2025-12-14
Copyright 2023-2025 - www.tftnews.com All Rights Reserved