首页
/
每日頭條
/
科技
/
python畫蝸牛号
python畫蝸牛号
更新时间:2026-01-17 06:54:08
介紹

用遞歸和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
推荐阅读
word求平均值的公式
word求平均值的公式
演示機型:華為MateBookX系統版本:win10APP版本:word20161、點擊菜單欄中的“布局”菜單,點擊“公式”菜單。2、點擊函數下拉列表,選中“=AVERAGE()”。3、在括号中輸入“B2:D2”,表示計算第二行的第二個單元格到第四個單元格總和的平均分。4、點擊“确定&rdq
2026-01-17
閑魚如何永久注銷賬号
閑魚如何永久注銷賬号
1、打開閑魚,點擊下方菜單欄的我的”。2、擊此頁面右上角的設置。3、下滑列表到最下方,點擊退出登錄。4、進入支付寶,在上方的搜索欄輸入服務大廳并搜索進入。5、選擇永久注銷。6、仔細閱讀下方相關信息的提示,點擊下一步,根據系統提示一步步操作完成賬号的注銷,即是等于閑魚賬号的注銷。
2026-01-17
嬰幼兒發燒新手媽媽該如何處理
嬰幼兒發燒新手媽媽該如何處理
第一、發燒的定義美國兒科學會以及絕大多數專家一緻認為嬰幼兒正常體溫介于97--100.3華氏度,約為36.11--37.94攝氏度。嬰幼兒肛溫達到以及高于100.4華氏度38攝氏度時,則被認為發燒。第二、發燒的症狀體溫測定不是判斷嬰幼兒發燒嚴重性的的唯一标準。年齡、行為也是重要參考标準。同樣的發熱溫度,3月齡以下的寶寶比3月齡以上寶寶嚴重。寶寶發燒,但與平時無異,能吃能跑,則無需過于擔心。另外要注
2026-01-17
衆包騎手和專送騎手有什麼區别
衆包騎手和專送騎手有什麼區别
以華為P40、EMUI11、美團v7.29.3為例。主要區别在于:待遇不同、工作時間不同、系統派單方式不同、工資标準不同、工資結算方式不同。1、待遇不同:美團衆包是美團專門為兼職送外賣的人員開發的一款app,不屬于公司的内部員工,也不能享受公司的福利待遇;而美團騎手是屬于美團旗下的正式員工,每天需要定時打卡上下班,有考勤要求,必須遵守公司的管理制度,享受公司的福利待遇。2、工作時間不一樣。美團衆包
2026-01-17
汽車的主動安全系統有哪些
汽車的主動安全系統有哪些
1、第一,安全氣囊。這個相信大家是再熟悉不過了,通常不管再低配的車型,至少前排主副駕駛位的安全氣囊是不會少的,中高配車型,後排也會有頭部安全氣囊,或者安全側氣簾,豪華配置的車型,還會有膝部氣囊,甚至行人保護氣囊。安全氣囊就像韓信點兵,多多益善,如果是同樣價位的車型,肯定優選安全氣囊更多的。2、第二,防抱死制動系統,簡稱ABS。ABS的工作原理是一段冗長的物理術語解說,咱們還是直接說人話吧,直白點地
2026-01-17
Copyright 2023-2026 - www.tftnews.com All Rights Reserved