首页 > 编程语言 >实验6 turtle绘图与python库应用编程体验

实验6 turtle绘图与python库应用编程体验

时间:2023-06-08 17:35:28浏览次数:38  
标签:turtle python hideturtle range 绘图 import circle def

task1-1

from turtle import *
def move(x, y):
    penup()
    goto(x, y)
    pendown()
def draw(n, size = 100):
    for i in range(n):
        fd(size)
        left(360/n)
def main():
    pensize(2)
    pencolor('red')
    move(-200, 0)
    draw(3)
    move(0, 0)
    draw(4)
    move(200, 0)
    draw(5)
    hideturtle()
    done()
main()

task1-2

from turtle import *
def moveto(x, y):
    penup()
    goto(x, y)
    pendown()
def main():
    pensize(2)
    pencolor('blue')
    moveto(-150, 0)
    circle(50)
    moveto(0, 0)
    circle(50, steps = 4)
    moveto(150, 0)
    circle(50, steps = 5)
    moveto(300, 0)
    circle(50, steps = 6)
    hideturtle()
    done()
main()

task2-1

from turtle import *
def moveto(x, y):
    penup()
    goto(x, y)
    pendown()
def main():
    setup(800, 600)
    radius = 20 # 圆初始半径
    offset = 20 # 同心圆每次位移量
    for i in range(9):
        moveto(0, -radius)
        circle(radius)
        radius += offset
    hideturtle()
    done()
main()

 

task2-2

from turtle import *
from random import random
def moveto(x, y):
    penup()
    goto(x, y)
    pendown()

def gen_color():
    return tuple((random() for i in range(3)))
def main():
    setup(800,600)
    radius = 20 # 圆初始半径
    offset = 20 # 同心圆每次位移量
    for i in range(9):
        moveto(0, -radius)
        color(gen_color())
        circle(radius)
        radius += offset
    hideturtle()
    done()
main()

task3-1

from turtle import *
def square(size = 50, rgb = 'pink'):

    pencolor(rgb)
    for i in range(4):
        fd(size)
        left(90)
def main():
    setup(800, 600)
    speed(0)
    n = 10
    for i in range(n):
        square(80)
        left(360/n)
    hideturtle()
    done()
main()

task3-2

from turtle import *
setup(800, 600)
pencolor('pink')
n = 10
for i in range(10):
    # 绘制一片花瓣
    for j in range(2):
        circle(80, 90)
        left(90)
    right(360/n)
hideturtle()
done()

 task4

from turtle import *
setup(800, 600)
bgcolor('black')
pencolor('white')
speed(0)
angle = 0
size = 2
n = 5 # 螺旋n边形
count = 50 # 循环次数
for i in range(count):
    fd(size)
    angle += 360/n
    seth(angle)
    size += 5
hideturtle()
done()

task5-1

from turtle import *

right(45)
penup()
goto(-100,-100)
pendown()
begin_fill()
pencolor('black')
fillcolor('black')
circle(100*2**0.5,steps = 4)
end_fill()

left(45)
penup()
goto(0,-100)
pendown()
pensize(2)
pencolor('red')
begin_fill()
fillcolor('red')
circle(100,steps = 4)
end_fill()

hideturtle()
done()

 

task5-2

from turtle import *

pensize(2)
pencolor('blue')
for i in range(5):
    setheading(90)
    r = 40+20*i
    goto(r,0)
    circle(r,extent = 90)
    goto(0,0)
hideturtle()
done()

task6

from turtle import *
from random import random

setup(800,600)
def gen_color():
    return tuple((random() for i in range(3)))
def rectangle():
    color(gen_color())
    begin_fill()
    for i in range(2):
        forward(5)
        left(90)
        forward(20)
        left(90)
    end_fill()
penup()
goto(-10*5,0)
pendown()
for k in range(20):
    rectangle()
    forward(5)

hideturtle()
done()

 

标签:turtle,python,hideturtle,range,绘图,import,circle,def
From: https://www.cnblogs.com/myt1/p/17466629.html

相关文章

  • Python使用os模块创建带时间戳的文件
    直接上源码:importosimporttime#定义函数名:在py文件路径下创建cache的txt文件deftxt(name,text):#os.getcwd()获取当前的工作路径;new=os.getcwd()+'/cache/'#判断当前路径是否存在,没有则创建new文件夹ifnotos.path.exists(new):......
  • python 字典的键值对对比
    importos,sysimportre#1.列出不同的键值reload(sys)sys.setdefaultencoding("utf8")dct0={"name":"zhang","age":"23"}dct1={"name":"san","age":"23"}defcmpdicts(dct0......
  • python基础day21 正则表达式和re模块
     正则表达式的介绍他是一门独立的语言,跟python等的语言没有任何的关系,但是其他语言可以使用正则表达式来做一些功能,主要是用来筛选数据的^(13|14|15|18)[0-9]{9}$形如上述代码的就是正则表达式什么是正则表达式:利用一些特殊符号匹配出想要的数据就是正则表达式,简称正则......
  • python Tesseract 图片识别文字
    Python识别图片中的文字(zhihu.com)超详细解决pytesseract.pytesseract.TesseractNotFoundError:tesseractisnotinstalledorit'snotinyo...-简书(jianshu.com)......
  • Python的Lambda函数: 一把极简编程的瑞士军刀
    Python中的lambda函数,或者叫匿名函数,是一个极其强大的工具。它以简洁、优雅的语法提供了创建函数的快速方式。在本篇文章中,我们将全方位地深入研究lambda函数的用法和特点,通过理论和实例相结合的方式,让你的Python编程技巧更上一层楼。Lambda函数基本语法Lambda函数的基本语法形......
  • python中可变对象和不可变对象
    数据类型的操作一般分为三类:1、构造操作: 这类操作主要是基于一些已知信息,产生这个类的实例对象。类似银行进行开通账户 2、解析操作:这类操作是获取对象的一些有用信息,其结果反应了对象的一些特征,但返回的不是对象本身。类似银行查询账户余额  3、变化操作:这类操作是修改......
  • 联邦学习算法介绍-FedAvg详细案例-Python代码获取
    联邦学习算法介绍-FedAvg详细案例-Python代码获取一、联邦学习系统框架二、联邦平均算法(FedAvg)三、联邦随梯度下降算法(FedSGD)四、差分隐私随联邦梯度下降算法(DP-FedSGD)五、差分隐私联邦平均算法(DP-FedAVG)六、FedAVG案例附代码1)案例背景2)参数设置3)结果展示4)代码详解七、完整......
  • python爬虫技术实例详解及数据可视化库
    前言在当前数据爆发的时代,数据分析行业势头强劲,越来越多的人涉足数据分析领域。面对大量数据,人工获取信息的成本高、耗时长、效率低,那么是否能用代码去完成大量复杂的工作,从而从网络上获取到目标信息?由此,网络爬虫技术应运而生。本文目录,你将会看到网络爬虫简介网络爬虫(webcrawler,又......
  • python 安装包、基础学习资料、代码应用示例
    安装包python-3.7.0.rar链接:https://pan.baidu.com/s/1Gl5QUMrLFoTekENighd0iw提取码:ysgxpycharm5.0.3.zip链接:https://pan.baidu.com/s/1DpzRiMWSW2byWjB1cYmQKw提取码:9rgiAnaconda3jupyternotebook第一步进入:https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/第......
  • python 网络爬虫技术 运用正则表达式爬取当当网(实战演练)
    爬取网络:当当网代码importreimportrequestsimporttimeimportxlwturl_basic='http://search.dangdang.com/?key='heads={'Connection':'keep-alive','Accept-Language':'zh-CN,zh;q=0.9','......