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

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

时间:2023-06-05 20:44:50浏览次数:46  
标签:turtle 10 20 python move 实验 绘图 def

实验任务1:使用turtle绘制基础图形

task1_1.py

实验源码:

 1 from turtle import*
 2 
 3 def move(x, y):
 4     penup()
 5     goto(x, y)
 6     pendown()
 7     
 8 def draw(n, size=100):
 9     for i in range(n):
10         fd(size)
11         left(360/n)
12     
13 def main():
14     pensize(2)
15     pencolor('red')
16     
17     move(-200, 0)
18     draw(3)
19     
20     move(0,0)
21     draw(4)
22     
23     move(200,0)
24     draw(5)
25     
26     hideturtle()
27     done()
28     
29     
30 main()

实验结果:

task1_2.py

实验源码:

 1 from turtle import*
 2 
 3 def moveto(x, y):
 4     penup()
 5     goto(x,y)
 6     pendown()
 7 
 8 def main():
 9     pensize(2)
10     pencolor('blue')
11 
12     moveto(-150,0)
13     circle(50)
14 
15     moveto(0,0)
16     circle(50,steps=4)
17 
18     moveto(150,0)
19     circle(50,steps=5)
20 
21     moveto(300,0)
22     circle(50,steps=6)
23 
24     hideturtle()
25     done()
26 
27 main()

实验结果:

实验任务2:使用turtle绘制9个同心圆

task2_1.py

实验源码:

 1 from turtle import*
 2 
 3 def moveto(x,y):
 4     penup()
 5     goto(x,y)
 6     pendown()
 7 
 8 def main():
 9     setup(800,600)
10 
11     radius=20
12     offset=20
13 
14     for i in range(9):
15         moveto(0,-radius)
16         circle(radius)
17         radius+=offset
18 
19     hideturtle()
20     done()
21 
22 main()

实验结果:

task2_2.py

实验源码:

 1 from turtle import*
 2 from random import random
 3 
 4 def moveto(x,y):
 5     penup()
 6     goto(x,y)
 7     pendown()
 8 
 9 def gen_color():
10     return tuple((random() for i in range(3)))
11 
12 def main():
13     setup(800,600)
14 
15     radius=180
16     offset=20
17 
18     for i in range(8):
19         moveto(0,-radius)
20         color(gen_color())
21 
22         begin_fill()
23         circle(radius)
24         end_fill()
25 
26         radius -=offset
27 
28     hideturtle()
29     done()
30 
31 main()

实验结果:

实验任务3:使用turtle绘制花瓣效果

task3_1.py

实验源码:

 1 from turtle import*
 2 
 3 def square(size=50,rgb='orange'):
 4     '''
 5     :para:size:int
 6     :para:c:str
 7     '''
 8 
 9     pencolor(rgb)
10     for i in range(4):
11         fd(size)
12         left(90)
13 
14 def main():
15     setup(800,600)
16     speed(0)
17 
18     n=10
19     for i in range(n):
20         square(80)
21         left(360/n)
22 
23     hideturtle()
24     done()
25 
26 main()

实验结果:

 

task3_2.py

实验源码:

 1 from turtle import*
 2 
 3 setup(800,600)
 4 pencolor('pink')
 5 
 6 n=10
 7 for i in range(10):
 8     for j in range(2):
 9         circle(80,90)
10         left(90)
11 
12     right(360/n)
13 
14 
15 hideturtle()
16 done()

实验结果:

实验任务4:使用turtle绘制螺旋多边形

task4.py

实验源码:

 1 from turtle import*
 2 
 3 setup(800,600)
 4 bgcolor('black')
 5 pencolor('white')
 6 speed(0)
 7 
 8 angle=0
 9 size=2
10 
11 n=5
12 count=50
13 for i in range(count):
14     fd(size)
15     angle += 360/n
16     seth(angle)
17     size +=5
18 
19 hideturtle()
20 done()

实验结果:

实验任务5:使用turtle绘制基础图形

task5_1.py

实验源码:

 1 from turtle import *
 2 
 3 
 4 def move(x,y):
 5     penup()
 6     goto(x,y)
 7     pendown()
 8 
 9 
10 def draw(n,a,size = 100):
11     color(a)
12     begin_fill()
13 
14     for i in range(n):
15         fd(size)
16         left(360/n)
17     end_fill()
18 
19 
20 move(-100,-100)
21 draw(4,'black',200)
22 move(-100,0)
23 right(45)
24 draw(4,'red',100*(2)**0.5)
25 
26 
27 hideturtle()
28 done()

实验结果:

task5_2.py

实验源码:

 1 from turtle import *
 2 
 3 
 4 pensize(2)
 5 def move(x,y):
 6     penup()
 7     goto(x,y)
 8     pendown()
 9 
10 def quarter_round(r):
11     pencolor('blue')
12     move(0,r)
13     circle(-r,90)
14 
15     for i in range(2):
16         right(90)
17         fd(r)
18     home()
19 
20 radius=40
21 offset=20
22 for i in range(5):
23     quarter_round(radius)
24     radius+=offset
25 
26 
27 hideturtle()
28 done()

实验结果:

实验任务6:绘图

task6.py

实验源码:

 1 from turtle import *
 2 
 3 def move(x,y):
 4     penup()
 5     goto(x,y)
 6     pendown()
 7 
 8 bgcolor('black')
 9 color('yellow')
10 move(0,-100)
11 begin_fill()
12 circle(100)
13 end_fill()
14 color('black')
15 speed(0)
16 move(87,-51)
17 seth(60)
18 begin_fill()
19 circle(100,80)
20 home()
21 end_fill()
22 move(-30,60)
23 dot(30,'black')
24 move(-38,60)
25 dot(5,'white')
26 
27 hideturtle()
28 done()

实验结果:

 

标签:turtle,10,20,python,move,实验,绘图,def
From: https://www.cnblogs.com/gaoyue124/p/17458017.html

相关文章

  • python 常用的内置函数
    1、sorted() 排序l=sorted([1,2,3,6,34,20,18])print(l)2、help()会经常使用python自带函数或模块,一些不常用的函数或是模块的用途不是很清楚,这时候就需要用到help函数来查看帮助。3、dir()dir()函数的参数是你传入的对象,它会返回对象的属性和方法print(dir(l......
  • Python 子类继承了多个父类 , MRO查找调用方法
      在Python中,如果一个子类继承了多个父类,而这些父类中都有同名的方法或属性,那么子类在调用这个方法或属性时,会按照MRO(MethodResolutionOrder,方法解析顺序)的规则进行查找和调用。在Python中,MRO的顺序是由C3算法计算出来的。C3算法是一种基于拓扑排序和合并的算法,用......
  • Python生成器深度解析:构建强大的数据处理管道
    前言生成器是Python的一种核心特性,允许我们在请求新元素时再生成这些元素,而不是在开始时就生成所有元素。它在处理大规模数据集、实现节省内存的算法和构建复杂的迭代器模式等多种情况下都有着广泛的应用。在本篇文章中,我们将从理论和实践两方面来探索Python生成器的深度用法。生......
  • Python生成器深度解析:构建强大的数据处理管道
    前言生成器是Python的一种核心特性,允许我们在请求新元素时再生成这些元素,而不是在开始时就生成所有元素。它在处理大规模数据集、实现节省内存的算法和构建复杂的迭代器模式等多种情况下都有着广泛的应用。在本篇文章中,我们将从理论和实践两方面来探索Python生成器的深度用法。......
  • python机器学习——点评评论分析
    (一)选题背景:随着广大用户“即需要、即外卖、即使用”的方便快捷的“外卖生活方式”的形成和普及,如今外卖行业不仅可以满足用户餐饮商品的在线即时购物需求,还可以满足饮食、水果、酒水饮料、家居日用、母婴用品、数码家电、服饰鞋包、美妆护肤、医药等各种品类商品。对于服务行业来......
  • python时间和日期处理
    1.时间处理time相关操作:获取当前时间时间转字符串字符串转时间计算时间差importtimenow=time.time()#时间戳从1970年1月1日0点0分0秒到此刻的秒数print(f"{now=}")now_st=time.localtime(now)#标准时间年月日,时分秒print(f"{now_st}")now_str=time.strftim......
  • Python实验课5
    实验任务六实验源码:1withopen('data6.csv','r',encoding='gbk')asf:2data=f.readlines()3data1=[str(eval(data[i]))foriinrange(1,len(data))]4data2=[str(int(eval(data[i])+0.5))foriinrange(1,len(data))]5info=......
  • Python网络爬虫-东方财经
    (一)、选题的背景为什么要选择此选题?要达到的数据分析目标是什么?从社会、经济、技术、数据来源等方面进行描述(200字以内)(10分) 经济蓬勃发展的世纪,财经新闻报道了国内外的经济数据、政策、企业动态等信息,这些信息对我们了解宏观经济的形势非常重要。通过财经新闻,我们可以了解到......
  • python文件路径和内容处理以及异常处理
    1.文件路径绝对路径和相对路径绝对路径:绝对路径,从盘符开始的路径(d:\data\file\abc.txt)frompathlibimportPathpath=Path('test.txt')print(path.absolute())相对路径:相对于当前的路径,当前是一个变量,在执行python时,所处的目录(./abc/a.txt ../ab/c.txttest.txt)没有......
  • python作用域
    1变量作用域变量(所有在内存中的数据)作用域:LEGBL:Local本地作用域(局部作用域),函数内部E:Enclosed闭包作用于,两个函数之间的,G:Gobal全局作用域(这个文件)B:Builtln内置作用域(全局通用)(pprint(builtins))内置:在任何地方,都可以直接使用全局:在本文件的任何地方,可以直接使用访问顺序:当我......