網站首頁 編程語言 正文
1創建窗口
1 turtle.setup(width,height,startx,starty)設置主窗口的大小和位置,
-
width
如果是整數,則以像素為單位的大小,如果是浮點數,則屏幕的一部分;默認為屏幕的 50%。 -
height
如果是整數,則以像素為單位的高度,如果是浮點數,則為屏幕的一部分;默認為屏幕的 75% -
startx
如果為正,則從屏幕左邊緣開始以像素為單位,如果從右邊緣為負,如果沒有,則水平居中窗口 -
starty
如果為正,則從屏幕上邊緣開始以像素為單位,如果為負,則從下邊緣開始,如果沒有,則垂直居中窗口
turtle.title
設置海龜窗口的標題
2 turtle.screensize(canvwidth=None, canvheight=None, bg=None),以像素為單位的寬,高。bg顏色字符串或顏色元組,新的背景顏色
2.畫筆移動
""" 初始情況畫筆面朝東位于畫布中央 """ turtle.penup() ? ?# 抬起畫筆 turtle.penup() ? ?# 抬起畫筆 不再畫線 turtle.pendown() ?# 放下畫筆 turtle.forward(10) # 前進 ? 整數或浮點數 turtle.backward(10)? turtle.left(90) ? ?# 向左 ? 整數或浮點數 turtle.right(90) turtle.goto() ? ?# 移動畫筆到絕對位置, 如果 y 為 None,x 必須是一對坐標或 Vec2D(例如,由 pos() 返回) turtle.setx(x) ?#將海龜的第一個坐標設置為 x,第二個坐標保持不變。 ?整數或浮點數 turtle.sety(y) #? turtle.home() ?# 將海龜回復到初始位置和初始方向? turtle.circle(radius, extent=None, steps=None) # 畫一個給定半徑的圓 """ radius 半徑 ? 如果半徑為正,則按逆時針方向繪制圓弧,否則按順時針方向繪制。 extent 角度 ? 確定繪制圓的哪個部分。如果沒有給出范圍,則繪制整個圓圈 """ turtle.speed() ?# 畫筆速度 0-10的整數? """ ? ? “fastest”: 0 ? ? “fast”: 10 ? ? “normal”: 6 ? ? “slow”: 3 ? ? “slowest”: 1 ? ? 如果輸入是大于 10 或小于 0.5 的數字,則速度設置為 0。 """ turtle.position() ?# 返回當前海龜的位置 turtle.pensize(width=None) ?# 設置線條的寬度 turtle.pencolor(*args) ?# 畫筆的顏色 ? "red", "yellow", ?"#33cc8c", (0.2, 0.8, 0.55) turtle.done() # ?讓圖像一直顯示 ?啟動事件循環 - 調用 Tkinter 的 mainloop 函數 ? 必須是海龜圖形程序中的最后一條語句。
還有一些不常見的
turtle.seth() # 角度, 但是每次旋轉后小烏龜的方向恢復到正X方向,即東(east) turtle.heading() ?# 返回當前烏龜的方向 turtle.begin_fill() # 在繪制要填充的形狀之前調用。 turtle.fillcolor(*args) # 填充色 turtle.end_fill() # 填充最后一次調用 begin_fill() 后繪制的形狀。
import turtle turtle.screensize(200, 100) turtle.begin_fill() turtle.fillcolor('blue') turtle.forward(60) turtle.left(120) turtle.forward(60) turtle.left(120) turtle.forward(60) turtle.end_fill() turtle.done()
3.遞歸畫圖
import turtle # turtle.screensize(800,600, "white") turtle.setup(width=0.6,height=0.6) turtle.penup() turtle.left(90) turtle.forward(200) turtle.pendown() turtle.right(180) def draw(n): ? ? if n==10: ? ? ? ? turtle.forward(30) ? ? if n<10: ? ? ? ? turtle.forward(30) ? ? ? ? turtle.right(90) ? ? ? ? turtle.forward(30) ? ? ? ? # 讓畫筆朝南 ? ? ? ? turtle.left(90)? ? ? ? ? draw(n+1) ? # 遞歸調用 ? ? ? ? turtle.left(180) ? ? ? ? turtle.forward(30) ? ? ? ? turtle.right(90) ? ? ? ? turtle.forward(60) ? ? ? ? turtle.right(90) ? ? ? ? turtle.forward(30) ?# 完成圖形了,但是要把turtle歸位 ? ? ? ? # 接下來就是歸位 ? ? ? ? turtle.left(180) ? ? ? ? turtle.forward(30) ? ? ? ? turtle.left(90) ? ? ? ? turtle.forward(30) ? ? ? ? turtle.left(90) ? ? ? draw(0) turtle.done() ? ?# 畫圖完成后不會自動關閉
原文鏈接:https://blog.csdn.net/m0_52118763/article/details/123035104
- 上一篇:.NET避免裝箱的方法_實用技巧
- 下一篇:C++的靜態類型檢查詳解_C 語言
相關推薦
- 2022-08-11 boost.asio框架系列之buffer函數_C 語言
- 2022-06-13 go語言編程之select信道處理示例詳解_Golang
- 2022-09-01 openGauss數據庫在CentOS上的安裝實踐記錄_數據庫其它
- 2022-09-14 Android自定義視圖中圖片的處理_Android
- 2021-11-10 Android?Studio設置繪制布局時的視圖_Android
- 2022-04-16 WPF框架Prism中區域Region用法介紹_實用技巧
- 2022-02-25 C++實現單例模式的方法_C 語言
- 2022-06-17 C語言深入探索動態內存分配的使用_C 語言
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支