电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

python繪圖模塊之利用turtle畫圖

瀏覽:39日期:2022-06-28 08:00:53
模塊之turtle

小故事

前兩天朋友說:“常文啊!聽說你會python,那能不能用python畫一些好看的圖呢?”然后我特意去學了一下turtle模塊,現在給大家分享一下。

一、什么是turtle

Turtle是python內嵌的繪制線、圓以及其他形狀(包括文本)的圖形模塊。

二、turtle函數的使用

import turtleturtle.pendown() # 放下畫筆turtle.penup() # 抬起畫筆turtle.pensize(int) # 設置畫筆寬度,值為整數型turtle.forward(float) # 講話比向前移動一定的角度turtle.backward(float) # 將畫筆向后移動一定的角度turtle.right(angle) # 將畫筆右轉一定的角度turtle.left(angle) # #將畫筆左轉一定的角度turtle.goto(x,y) # 將畫筆移動到一個指定的絕對坐標turtle.setx(x) # 設置畫筆向x方向移動的距離,值為實數turtle.sety(y) # 設置畫筆向y方向移動的距離,值為實數turtle.setheading(angle) # 設定turtle箭頭的方向為指定方向,0?東 90—北turtle.home() # 將畫筆返回到原點turtle.circle(r,ext,steps=int) # 繪制一個設置半徑和階數的圓(設置之后會繪制多邊形)turtle.dot(d,color) # 繪制一個指定直徑的圓點,顏色為字符串類型turtle.undo() #取消最后一個圖操作turtle.speed(s) # 設置畫筆速度,為整數類型,且取值在1-10之間turtle.color(‘str’) # 設置畫筆顏色,為字符串類型turtle.fillcolor(‘str’) # 設置填充顏色,為字符串類型turtle.begin_fill() # 結束填充turtle.end_fill() # 開始填充turtle.filling() # 返回填充狀態,True表示填充,False表示沒有填充turtle.clear() # 清除窗口所有內容turtle.reset() # 清除窗口,將狀態和位置復位為初始值turtle.screensize(w,h) # 設置turtle顯示的大小,并設置寬度和高度turtle.hideturtle() # 隱藏turtle箭頭turtle.showturtle() # 顯示turtle窗口turtle.done() # 使turtle窗口不會自動消失turtle.isvisible() # 如果turtle可見,返回turtleturtle.write(‘str’,font=(“Arial”,8,“normal”)) # 在turtle位置編寫字符串s,字體由字體名、字體大小、字體類型三部分組成turtle.position() # 獲取畫筆的坐標,返回一個元組,值為浮點型

案例一:基本使用

import turtleimport timeturtle.pensize(3)turtle.showturtle() # 顯示箭頭turtle.write('吳常文') # 寫字符串turtle.forward(300) # 前進100像素turtle.color('red') # 畫筆顏色改為redturtle.left(90) # 箭頭左轉90度turtle.forward(300)turtle.goto(0,50) # 去坐標(0,50)turtle.goto(0,0) # 回到原點turtle.penup() # 抬筆,這樣路徑向上turtle.goto(0,300)turtle.goto(0,0)turtle.pendown() # 下筆,這樣路徑向下turtle.goto(0,50)turtle.goto(50,50)turtle.circle(100) # 畫圓time.sleep(5) # 睡5秒

效果圖1:

python繪圖模塊之利用turtle畫圖

案例二:五角星

import turtleimport timeturtle.pensize(5)turtle.pencolor('yellow')turtle.fillcolor('red')turtle.begin_fill()for _ in range(5): turtle.forward(200) turtle.right(144)turtle.end_fill()time.sleep(2)turtle.penup()turtle.goto(-150, -120)turtle.color('violet')turtle.write('五角星', font=(’Arial’, 22, ’normal’))turtle.mainloop()

效果圖2:

python繪圖模塊之利用turtle畫圖

案例三:奧運五環

#!/user/bin/python3# --*--coding: utf-8 --*--# @Time: 2021/2/10 12:22# @Author:吳常文# @File: 03奧運五環import turtleimport timeturtle.width(10) # 寬度turtle.color('red')turtle.circle(50)turtle.color('blue')turtle.penup()turtle.goto(120,0)turtle.pendown()turtle.circle(50)turtle.color('black')turtle.penup()turtle.goto(240,0)turtle.pendown()turtle.circle(50)turtle.color('yellow')turtle.penup()turtle.goto(60,-50)turtle.pendown()turtle.circle(50)turtle.color('green')turtle.penup()turtle.goto(180,-50)turtle.pendown()turtle.circle(50)time.sleep(3)

效果圖3:

python繪圖模塊之利用turtle畫圖

案例四:給你一朵玫瑰花

import turtleimport time# 設置初始位置 turtle.penup()turtle.left(90)turtle.fd(200)turtle.pendown()turtle.right(90)# 花蕊 turtle.fillcolor('red')turtle.begin_fill()turtle.circle(10, 180)turtle.circle(25, 110)turtle.left(50)turtle.circle(60, 45)turtle.circle(20, 170)turtle.right(24)turtle.fd(30)turtle.left(10)turtle.circle(30, 110)turtle.fd(20)turtle.left(40)turtle.circle(90, 70)turtle.circle(30, 150)turtle.right(30)turtle.fd(15)turtle.circle(80, 90)turtle.left(15)turtle.fd(45)turtle.right(165)turtle.fd(20)turtle.left(155)turtle.circle(150, 80)turtle.left(50)turtle.circle(150, 90)turtle.end_fill()# 花瓣1turtle.left(150)turtle.circle(-90, 70)turtle.left(20)turtle.circle(75, 105)turtle.setheading(60)turtle.circle(80, 98)turtle.circle(-90, 40)# 花瓣2turtle.left(180)turtle.circle(90, 40)turtle.circle(-80, 98)turtle.setheading(-83)# 葉子1 turtle.fd(30)turtle.left(90)turtle.fd(25)turtle.left(45)turtle.fillcolor('green')turtle.begin_fill()turtle.circle(-80, 90)turtle.right(90)turtle.circle(-80, 90)turtle.end_fill()turtle.right(135)turtle.fd(60)turtle.left(180)turtle.fd(85)turtle.left(90)turtle.fd(80)# 葉子2turtle.right(90)turtle.right(45)turtle.fillcolor('green')turtle.begin_fill()turtle.circle(80, 90)turtle.left(90)turtle.circle(80, 90)turtle.end_fill()turtle.left(135)turtle.fd(60)turtle.left(180)turtle.fd(60)turtle.right(90)turtle.circle(200, 60)turtle.up()turtle.goto(100, -300)turtle.write('Send you a flower, bring you home')time.sleep(5)

效果圖4:

python繪圖模塊之利用turtle畫圖

案例五:愛心樹

#!/user/bin/python3# --*--coding: utf-8 --*--# @Time: 2021/2/10 21:56# @Author:吳常文# @File: 05 愛心樹from turtle import Turtle, mainloopimport turtledef tree(plist, l, a, f): ''' plist是筆的列表 l是分支 a的長度是兩個分支之間夾角的一半 f是分支之間逐級縮短的系數。''' if l > 5: # lst = [] for p in plist: p.forward( l) # 沿著當前的方向畫畫按照海龜前進的方向,向前移動指定的距離。 q = p.clone() # 創建并返回具有相同位置、標題和turtle屬性的海龜的克隆。 p.left(a) # 以角度單位將海龜向左翻轉 q.right( a) # 以角度單位將海龜右轉,nit是默認的角度,但可以通過degrees()和radians()函數設置。 lst.append(p) # 將元素增加到列表的最后 lst.append(q) tree(lst, l * f, a, f)def main(): p = Turtle() p.color('red') p.pensize(4) # p.setundobuffer(None) p.hideturtle() # 讓烏龜隱形。這是一個好主意,當你在做一些復雜的繪圖時, # 因為把烏龜藏起來能明顯加快繪圖速度。 # p.speed(10) # p.getscreen().tracer(1,0)#Returtle.write('You are the secret of my heart') p.speed(4) # 然后可以為該對象調用TurtleScreen方法。 p.left(90) # 方向以角度單位將海龜向左翻轉。 調整畫筆 p.penup() # 向上拉筆——移動時不繪圖。 p.goto(0, -200) # 移動海龜到一個絕對位置。如果筆放下了,畫一條線。不要改變海龜的方向。 p.pendown() # 向下拉筆——移動時繪圖 這三條語句是一個組合相當于先把筆收起來再移動到指定位置,再把筆放下開始畫 # 否則turtle一移動就會自動的把線畫出來 # t = tree([p], 200, 65, 0.6375) t = tree([p], 200, 65, 0.6375) turtle.down() turtle.goto(-80, 70) turtle.write('There’s a heart for you') turtle.done()main()

效果圖5:

python繪圖模塊之利用turtle畫圖

案例六:給你一顆愛心

#!/user/bin/python3# --*--coding: utf-8 --*--# @Time: 2021/2/10 22:07# @Author:吳常文# @File: 06 愛心import turtleimport timedef func(): for i in range(200): turtle.right(1) turtle.forward(1)turtle.color(’red’, ’pink’)turtle.pensize(2)turtle.speed(10)turtle.goto(0, 0)turtle.begin_fill()turtle.left(140)turtle.forward(112)func()turtle.left(120)func()turtle.forward(112)turtle.end_fill()turtle.pensize(5)turtle.up()turtle.goto(-80, 122.7)turtle.left(70)turtle.down()# turtle.forward(0)turtle.up()turtle.goto(100, -10)turtle.write('There’s a heart for you')turtle.done()time.sleep(3)

效果圖6:

python繪圖模塊之利用turtle畫圖

案例七:五星紅旗

import turtle as t# 位移函數def Skip(t,x,y): t.penup() t.goto(x,y) t.pendown()# 繪制五星紅旗def draw(t,x,y,z): t.begin_fill() for i in range(x): t.forward(y) t.left(z) t.end_fill()# 畫筆基礎設置t.screensize(1200,800)t.pensize(5)t.hideturtle()t.speed(5)t.pencolor('red')# 畫筆移動Skip(t,0,-200)# 繪制國旗t.fillcolor('red')t.begin_fill()t.forward(300)t.left(90)t.forward(400)t.left(90)t.forward(600)t.left(90)t.forward(400)t.left(90)t.forward(300)t.end_fill()# 畫筆移動Skip(t,-250,115)# 繪制大五角星t.pencolor('yellow')t.fillcolor('yellow')t.begin_fill()for i in range(5): t.forward(100) t.right(144)t.end_fill()'''第一顆副星'''# 畫筆移動Skip(t,-120,10)# 繪制小五星draw(t,5,30,144)'''第二顆副星'''# 畫筆移動Skip(t,-80,50)# 繪制小五星draw(t,5,30,144)'''第三顆副星'''# 畫筆移動Skip(t,-80,110)# 繪制小五星draw(t,5,30,144)'''第四顆副星'''# 畫筆移動Skip(t,-120,150)# 繪制小五星draw(t,5,30,144)t.done()

效果圖7:

python繪圖模塊之利用turtle畫圖

總結

到此這篇關于python模塊教程之利用turtle畫圖的文章就介紹到這了,更多相關python模塊之turtle畫圖內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 风电变桨伺服驱动器-风电偏航变桨系统-深圳众城卓越科技有限公司 | 拉力测试机|材料拉伸试验机|电子拉力机价格|万能试验机厂家|苏州皖仪实验仪器有限公司 | KBX-220倾斜开关|KBW-220P/L跑偏开关|拉绳开关|DHJY-I隔爆打滑开关|溜槽堵塞开关|欠速开关|声光报警器-山东卓信有限公司 | 工业风机_环保空调_冷风机_工厂车间厂房通风降温设备旺成服务平台 | 喷涂流水线,涂装流水线,喷漆流水线-山东天意设备科技有限公司 | 臭氧老化试验箱,高低温试验箱,恒温恒湿试验箱,防水试验设备-苏州亚诺天下仪器有限公司 | elisa试剂盒-PCR试剂盒「上海谷研实业有限公司」 | 沈阳真空机_沈阳真空包装机_沈阳大米真空包装机-沈阳海鹞真空包装机械有限公司 | 温湿度记录纸_圆盘_横河记录纸|霍尼韦尔记录仪-广州汤米斯机电设备有限公司 | 辊道窑炉,辊道窑炉厂家-山东艾希尔 | 方源木业官网-四川木门-全国木门专业品牌 | 拉力机-拉力试验机-万能试验机-电子拉力机-拉伸试验机-剥离强度试验机-苏州皖仪实验仪器有限公司 | 利浦顿蒸汽发生器厂家-电蒸汽发生器/燃气蒸汽发生器_湖北利浦顿热能科技有限公司官网 | 空气能采暖,热泵烘干机,空气源热水机组|设备|厂家,东莞高温热泵_正旭新能源 | 天津试验仪器-电液伺服万能材料试验机,恒温恒湿标准养护箱,水泥恒应力压力试验机-天津鑫高伟业科技有限公司 | 密封圈_泛塞封_格莱圈-[东莞市国昊密封圈科技有限公司]专注密封圈定制生产厂家 | 气象监测系统_气象传感器_微型气象仪_气象环境监测仪-山东风途物联网 | 成人纸尿裤,成人尿不湿,成人护理垫-山东康舜日用品有限公司 | 欧美日韩国产一区二区三区不_久久久久国产精品无码不卡_亚洲欧洲美洲无码精品AV_精品一区美女视频_日韩黄色性爱一级视频_日本五十路人妻斩_国产99视频免费精品是看4_亚洲中文字幕无码一二三四区_国产小萍萍挤奶喷奶水_亚洲另类精品无码在线一区 | 上海赞永| 超声波清洗机_细胞破碎仪_实验室超声仪器_恒温水浴-广东洁盟深那仪器 | 我爱古诗词_古诗词名句赏析学习平台 | 武汉EPS线条_EPS装饰线条_EPS构件_湖北博欧EPS线条厂家 | 粒米特测控技术(上海)有限公司-测功机_减速机测试台_电机测试台 | IHDW_TOSOKU_NEMICON_EHDW系列电子手轮,HC1系列电子手轮-上海莆林电子设备有限公司 | 至顶网| ET3000双钳形接地电阻测试仪_ZSR10A直流_SXJS-IV智能_SX-9000全自动油介质损耗测试仪-上海康登 | 泰来华顿液氮罐,美国MVE液氮罐,自增压液氮罐,定制液氮生物容器,进口杜瓦瓶-上海京灿精密机械有限公司 | 钢结构-钢结构厂房-钢结构工程[江苏海逵钢构厂] | 定制防伪标签_防伪标签印刷_防伪标签厂家-510品保防伪网 | 耐酸碱胶管_耐腐蚀软管总成_化学品输送软管_漯河利通液压科技耐油耐磨喷砂软管|耐腐蚀化学软管 | 双舌接地线-PC68数字式高阻计-ZC36|苏海百科| ★店家乐|服装销售管理软件|服装店收银系统|内衣店鞋店进销存软件|连锁店管理软件|收银软件手机版|会员管理系统-手机版,云版,App | 液氨泵,液化气泵-淄博「亚泰」燃气设备制造有限公司 | 送料机_高速冲床送料机_NC伺服滚轮送料机厂家-东莞市久谐自动化设备有限公司 | VOC检测仪-甲醛检测仪-气体报警器-气体检测仪厂家-深恒安科技有限公司 | 杰福伦_磁致伸缩位移传感器_线性位移传感器-意大利GEFRAN杰福伦-河南赉威液压科技有限公司 | 山东集装箱活动房|济南集装箱活动房-济南利森集装箱有限公司 | YT保温材料_YT无机保温砂浆_外墙保温材料_南阳银通节能建材高新技术开发有限公司 | 数字展示在线_数字展示行业门户网站| 产业规划_产业园区规划-产业投资选址及规划招商托管一体化服务商-中机院产业园区规划网 |