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

用遞歸和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
推荐阅读
國行蘋果序列号是什麼開頭
國行蘋果序列号是什麼開頭
演示機型:Iphone12系統版本:iOS14iPhone國行的序列号開頭為C、D、F、G,如果需要查看序列号,打開手機,點擊主頁設置按鈕,打開設置頁面,點擊通用選項,選擇關于本機即可查看。序列号也稱作“機器碼”,一般為電子産品的全球唯一标識碼。常用于防僞,最大的特點就是唯一。序列号一般用途:序列号在信息技術大量運用、物聯網初步成型的時期用于電子設備身份識别。為了識别的準确性,序列号都為全球唯一的
2025-12-30
新手機怎麼充電對電池好
新手機怎麼充電對電池好
1、新手機電池在前三次先用至低電告警(10%-20%),再配合原裝直充在手機開機充電到滿,然後繼續保持充電約1小時。2、日常使用中,電池充滿就好,要避免繼續長時間充電,;手機電量剩餘在20%-30%就可以進行充電,不需要用到低電警告,萬一用到關機,電池應盡快充電。3、盡量避免睡前充電,因為睡前充電的時間都較長,而且夜間電壓不穩定,許多地方的夜間電壓都比較高并且波動大,對電池的影響較大。4、一般手機
2025-12-30
ipad程序塢怎麼設置
ipad程序塢怎麼設置
演示機型:ipadair4系統版本:iOS14.41、進入設置界面,點擊主屏幕與程序塢。2、點擊進入多任務,點擊将上面的選項都打開。3、返回主屏幕,下方中間位置就會顯示程序塢。4、長按上方的應用軟件,會出現小方框,點擊編輯主屏幕。5、當出現應用軟件上有小x時,可以長按應用将其拖至程序塢。ipad使用技巧:1、在系統死機的情況下,進行軟重啟:隻要按住電源鍵和Home鍵持續幾秒鐘,iPad将重新啟動。
2025-12-30
官換機是什麼意思與原機有什麼區别
官換機是什麼意思與原機有什麼區别
以iPhone12、ios14為例。主要區别在于:定義不同、保修時間、價格。1、定義不同:官換機:也叫服務機、置換機,是蘋果用于售後換機用的全新機器。假如你的手機在保修之内壞掉或出現故障,蘋果公司會根據故障情況選擇給你更換一台全新的iPhone,這樣的iPhone就是官換機。全新原封機(零售機):顧名思義,就是廠家生産出來用于銷售的産品,蘋果直營店(AppleStore)、蘋果在線商店、授權經銷商
2025-12-30
蘋果手機的鍵盤怎麼換皮膚
蘋果手機的鍵盤怎麼換皮膚
演示機型:Iphone12系統版本:iOS14.4APP版本:搜狗輸入法10.28.11、首先在手機上下載搜狗輸入法,進入設置通用頁面,然後點擊“鍵盤”。2、再次點擊鍵盤。3、進入鍵盤頁面後,選擇添加新鍵盤。4、将“搜狗輸入法”添加進去。5、打開鍵盤,長按左下角圖标,然後選擇搜狗。6、最後選擇鍵盤左上角搜狗标志,選擇皮膚,再修改鍵盤皮膚即可。蘋果手機
2025-12-30
Copyright 2023-2025 - www.tftnews.com All Rights Reserved