17行代码的烟花 turtle 不用图片 天地良心

我妹叫我做个烟花,我本来是拒绝的

但是我妹她给我我一瓶娃哈哈

我才发现 这爆率是真的高

老规矩放代码:

import turtle,time;t1,list1=turtle.Turtle(),[]
def a(num):list1[num].fd(1.5)
def draw(color,cx,x,y):
    t1.ht();t1.pensize(5);t1.pencolor(color);t1.seth(cx);t1.pu()
    t1.goto(x,y);t1.pd();t1.bk(200);turtle.tracer(False)
    for i in range(20):
        t=turtle.Turtle();t.pu();t.pencolor(color);list1.append(t)
    for l in range(20):list1[l].left(18*l+18)
    t1.clear()
    for j in range(150):
        a(0);a(1);a(2);a(3);a(4);a(5);a(6);a(7)
        a(8);a(9);a(10);a(11);a(12);a(13);a(14);
        a(15);a(16);a(17);a(18);a(19);turtle.update();time.sleep(0.01)
    time.sleep(0.5)
    for n in list1:n.reset()
draw('blue',-90,0,-200)
    

import turtle,time;t1,list1=turtle.Turtle(),[]
def a(num):list1[num].fd(1.5)
def draw(color,cx,x,y):
    t1.ht();t1.pensize(5);t1.pencolor(color);t1.seth(cx);t1.pu()
    t1.goto(x,y);t1.pd();t1.bk(200);turtle.tracer(False)
    for i in range(20):
        t=turtle.Turtle();t.pu();t.pencolor(color);list1.append(t)
    for l in range(20):list1[l].left(18*l+18)
    t1.clear()
    for j in range(150):
        a(0);a(1);a(2);a(3);a(4);a(5);a(6);a(7)
        a(8);a(9);a(10);a(11);a(12);a(13);a(14);
        a(15);a(16);a(17);a(18);a(19);turtle.update();time.sleep(0.01)
    time.sleep(0.5)
    for n in list1:n.reset()
draw('blue',-90,0,-200)

老规矩天龙八部走:

第一步.导入模块(不写趋势)

import turtle,time

第二步.给烟花一个温暖的列表(不写趋势)

t1,list1=turtle.Turtle,[]

第三步.伺候画笔(不写照样趋势)

t1.ht()#隐藏画笔
t1.pensize(5)#宽度为5
t1.pencolor('blue')#啥颜色都行 别的懒的写
t1.seth(-90)#填啥都行 改朝向的
t1.pu()#不让画笔留下痕迹
t1.goto(0,0)#去这个位置
t1.pd()#落笔
t1.bk(200)#后退200像素
turtle.tracer(False)#不知道的看上次那篇  32行的贪吃蛇

第四步.帮画笔搬家

for i in range(20):#搞20个烟花
    t=turtle.Turtle()#烟花
    t.pu()#不让烟花留下痕迹
    t.pencolor('blue')#蓝色烟花(填啥都行)
    list1.append(t)#存进家里
for l in range(20):#纠正20个烟花的朝向
    list1[l].left(18*l+18)#纠正18度

第五步.抛弃t1

t1.clear()#删除痕迹
#t1.reset()      #也行 都是删除痕迹

第六步.

def a(num):
    list1[num].fd(1.5)#太烦了 我反手封装函数
for j in range(150):
    a(0);a(1);a(2);a(3);a(4);a(5);a(6);a(7)
    a(8);a(9);a(10);a(11);a(12);a(13);a(14)
    a(15);a(16);a(17);a(18);a(19)
    turtle.update()#同时开始
    time.sleep(0.01)#听一下 不然tarcer会继续为非作歹
time.sleep(0.5)#听一下
for n in list1:
    n.reset()#给我删除!!!!!

第七步.转化成函数

import turtle,time;t1,list1=turtle.Turtle(),[]
def draw(color,cx,x,y):
    t1.ht();t1.pensize(5);t1.pencolor(color);t1.seth(cx);t1.pu()
    t1.goto(x,y);t1.pd();t1.bk(200);turtle.tracer(False)
    for i in range(20):
        t=turtle.Turtle();t.pu();t.pencolor(color);list1.append(t)
    for l in range(20):list1[l].left(18*l+18)
    t1.clear()
    def a(num):list1[num].fd(1.5)
    for j in range(150):
        a(0);a(1);a(2);a(3);a(4);a(5);a(6);a(7)
        a(8);a(9);a(10);a(11);a(12);a(13);a(14);
        a(15);a(16);a(17);a(18);a(19);turtle.update();time.sleep(0.01)
    time.sleep(0.5)
    for n in list1:n.reset()
draw('blue',-90,0,-200)

第八步.重新排版

import turtle,time;t1,list1=turtle.Turtle(),[]
def a(num):list1[num].fd(1.5)
def draw(color,cx,x,y):
    t1.ht();t1.pensize(5);t1.pencolor(color);t1.seth(cx);t1.pu()
    t1.goto(x,y);t1.pd();t1.bk(200);turtle.tracer(False)
    for i in range(20):
        t=turtle.Turtle();t.pu();t.pencolor(color);list1.append(t)
    for l in range(20):list1[l].left(18*l+18)
    t1.clear()
    for j in range(150):
        a(0);a(1);a(2);a(3);a(4);a(5);a(6);a(7)
        a(8);a(9);a(10);a(11);a(12);a(13);a(14);
        a(15);a(16);a(17);a(18);a(19);turtle.update();time.sleep(0.01)
    time.sleep(0.5)
    for n in list1:n.reset()
draw('blue',-90,0,-200)

我偶尔学点c嘎嘎 点赞有10个出

  • 19
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值