用户:
爱因斯坦的弟子查看:10 回复:10 评论:10 创建时间:2019-07-31T20:21:22
嗨,大家好呀。我是CJW工作室里的python大侠爱因斯坦的弟子。
哈喽,大家想做出来这样的代码吗?
好的,我们来学习一个难度比较低(还行)的代码作品--科赫雪花。
这是我们编程猫平台的模板作品,因为里面有很多大家可能不知道的知识点,所以我就拿出来啦!
我们主要运用的是Python里面的海龟库,海龟库主要是在海龟区画图的(大家都知道吧)!
好啦,先来展示一下本课的代码
import turtle
t = turtle.Pen()
def snow(size, n):
if (n == 0):
t.forward(size)
else:
for angel in [0, 60, (-120), 60]:
t.left(angel)
snow(size / 3, n - 1)
def draw():
t.speed(0)
t.penup()
t.goto((-200), 100)
t.pendown()
t.pensize(2)
level = 3
snow(400, level)
t.right(120)
snow(400, level)
t.right(120)
snow(400, level)
turtle.done()
draw()
提示:注意缩进
好啦,我来讲解吧
import turtle#导入turtle库 from 库名 import 函数(部分导入),import+库名(完全导入)。
#分形雪花
t = turtle.Pen()#开始分型雪花
def snow(size, n):#定义函数snow def+内容
if (n == 0) :#条件判断语句,当n等于0的时候@请看讲解1
#笔记:比较运算符:>,<,==,!=,(不等于),>=,<=。
t.forward(size)#size:大小,尺寸,这里是横着画一个函数(size)大小的直线
else :
for angel in [0,60,(-120),60]:#使用for循环语句@请看讲解2
t.left(angel)#运用海龟库,向左边画一个angel(特殊用法)
#函数调用自身,这种调用方式叫做递归
#递归时参数变小,画的是更小的雪花
snow(size / 3, n - 1)#调用函数snow,让它的大小除以3,n-1@请看讲解3
def draw():#@请看讲解4
t.speed(0)#设置速度为0 speed:速度
t.penup()#抬笔
t.goto((-200), 100)#设置开始点,如果不设置的话,程序默认从中间起笔
t.pendown()#落笔
t.pensize(2)#笔的型号(大小尺寸)
level = 3#级别3
snow(400, level)#雪花
t.right(120)#向右旋转120度
snow(400, level)
t.right(120)#向右旋转120度
snow(400, level)
turtle.done()#结束绘制
draw()
#这条代码很重要,如果不添加它,整个图像无法绘制
下面是我专门为初学者做的讲解
讲解1:
if 条件判断1:
执行语句
if 条件判断2:
执行语句
else:
执行语句
讲解2:
for(关键字) item(元素) in(关键字) interable(集合):
每一次循环进行一次迭代
for i in + 列表:(别忘记冒号)
执行程序
讲解3:
Python里面的运算:加减不变(+,-),乘(*)除(/)变,除法:分子/分母
讲解4
运用画笔海龟创作基本功
1.导入海龟库import turtle
2.定义所需要的函数,设置画笔或者直接使用海龟库作图
3.控制画笔海龟
常用的控制画笔海龟的函数:
speed()设置速度
penup()抬笔
goto()起笔
pendown()落笔
pensize()设置笔的大小
right()或者forward()或者left() 右转弯,左转弯
forward()直走
done()结束
备注,使用的时候要先定义turtle.Pen为任意一个字母 因为他是根据海龟库的内容
编辑不易,请多多谅解,如果有不明白的地方,我们可以在评论区讨论一下,在评论区浪一下~
下一期还想学什么作品
A:_____(请填空) B:爱因斯坦的弟子的FlappyBird(代表作) C:Python入门知识 D:海龟库入门
E:丰富的表情包配图配字
爱因斯坦的弟子import turtle
t = turtle.Pen()
def snow(size, n):
if (n == 0):
t.forward(size)
else:
for angel in [0, 60, (-120), 60]:
t.left(angel)
snow(size / 3, n - 1)
def draw():
t.speed(0)
t.penup()
t.goto((-200), 100)
t.pendown()
t.pensize(2)
level = 3
snow(400, level)
t.right(120)
snow(400, level)
t.right(120)
snow(400, level)
turtle.done()
draw()点赞0
评论