好,中秋节快到了,那我们就写个代码送对象吧!
目录
基础代码
添加月兔和月饼
加上颜色
添加动作
添加兔子动作
成品
直接上print时间复杂度杠杠的:
import time
def send_mid_autumn_movie_to_girlfriend():
print("正在生成中秋电影动画,请稍等片刻...")
time.sleep(3) # 模拟生成动画过程
print("------------------------------------")
print("| 中秋节快乐!亲爱的 |")
print("| 给你准备了一部特别的 |")
print("| 中秋电影动画,希望你喜欢 |")
print("------------------------------------")
print(" \\")
print(" \\")
print(" \\\n")
print(" -----")
print(" | |")
print(" | 中 |")
print(" | 秋 |")
print(" | 快 |")
print(" | 乐 |")
print(" -----")
print("\n")
print("祝福语:")
print("亲爱的,中秋佳节到了,愿这部中秋电影动画能带给你欢乐与温馨。我在这个美好的时刻,感谢你对我的陪伴和支持,希望我们的爱情也能像中秋的明月一样圆满。祝你中秋快乐,幸福美满!爱你永远~")
print("\n")
send_mid_autumn_movie_to_girlfriend()
哈哈哈时间复杂度是不是超级小,当然这个还是送自己比较好,既然这样,那么我们就开始正题吧!
送女友华丽的中秋动画
首先,我们给代码加上月兔和月饼,那么代码就是这样:
import time
def send_mid_autumn_movie_to_girlfriend():
print("正在生成中秋电影动画,请稍等片刻...")
time.sleep(3) # 模拟生成动画过程
print("------------------------------------")
print("| 中秋节快乐!亲爱的 |")
print("| 给你准备了一部特别的 |")
print("| 中秋电影动画,希望你喜欢 |")
print("------------------------------------")
print(" .-.")
print(" //(\\)")
print(" |\\ ///\ \\/")
print(" \\|/ \\\/ == ")
print(" |/_-|\n")
print(" -----")
print(" | |")
print(" | 中 |")
print(" | 秋 |")
print(" | 快 |")
print(" | 乐 |")
print(" -----")
print(" .-'''''-.")
print(" .' * * * `.")
print(" : * * :")
print(" : ~ 兔子 ~ :")
print(" : ~ 和 ~ :")
print(" : * * :")
print(" `. * * * ,'")
print(" `-.....-'\n")
print("祝福语:")
print("亲爱的,中秋佳节到了,在这个美好的时刻,我用心为你准备了这部中秋电影动画。月兔儿在皓月下奔跑,月饼香气弥散在四周,寄托了我对你的深深思念和祝福。愿我们的爱情像皓月一样明亮,甜蜜如月饼。祝你中秋快乐,幸福满溢!爱你一直陪伴~")
print("\n")
send_mid_autumn_movie_to_girlfriend()
代码解释
这段代码定义了一个名为send_mid_autumn_movie_to_girlfriend()的函数。该函数用于生成中秋节电影动画并发送给女友。
在函数开始前,先使用time.sleep(3)模拟生成动画的过程,暂停3秒钟。
接下来,通过print语句打印一段欢迎词和祝福语,并按照特定的格式打印出月兔和月饼的图形。
最后,输出祝福语,表达对女友的思念和祝福。
函数执行完成后,即可将生成的中秋节电影动画发送给女友。
还是很陋是不是?那我们加上颜色:
import time
def send_mid_autumn_movie_to_girlfriend():
print("正在生成中秋电影动画,请稍等片刻...")
time.sleep(3) # 模拟生成动画过程
print("------------------------------------")
print("| 中秋节快乐!亲爱的 |")
print("| 给你准备了一部特别的 |")
print("| 中秋电影动画,希望你喜欢 |")
print("------------------------------------")
print(" .-.")
print(" //(\\)")
print(" |\\ ///\ \\/")
print(" \\|/ \\\/ == ")
print(" |/_-|\n")
print(" -----")
print(" | |")
print(" | 中 |")
print(" | 秋 |")
print(" | 快 |")
print(" | 乐 |")
print(" -----")
print(" .-'''''-.")
print(" .' * * * `.")
print(" : * * :")
print(" : ~ 兔子 ~ :")
print(" : ~ 和 ~ :")
print(" : * * :")
print(" `. * * * ,'")
print(" `-.....-'\n")
print("祝福语:")
print("亲爱的,中秋佳节到了,在这个美好的时刻,我用心为你准备了这部中秋电影动画。月兔儿在皓月下奔跑,月饼香气弥散在四周,寄托了我对你的深深思念和祝福。愿我们的爱情像皓月一样明亮,甜蜜如月饼。祝你中秋快乐,幸福满溢!爱你一直陪伴~")
print("\n")
send_mid_autumn_movie_to_girlfriend()
代码解释:
这段代码定义了一个名为send_mid_autumn_movie_to_girlfriend()的函数。该函数用于生成中秋节电影动画并发送给女友。
在函数开始前,先使用time.sleep(3)模拟生成动画的过程,暂停3秒钟。
接下来,通过print语句打印一段欢迎词和祝福语,并按照特定的格式打印出月兔和月饼的图形。
最后,输出祝福语,表达对女友的思念和祝福。
函数执行完成后,即可将生成的中秋节电影动画发送给女友。
这段代码是一个功能简单的程序,通过打印和输出文本实现了生成中秋节电影动画并表达祝福的功能。
但是....还是太单调了,动画怎么能少得了动作呢?
生成月兔走动的动作,月饼旋转消失又出现的动作包含颜色搭配这里我们先于上面代码分开重新写一个使用图形库:
import turtle
# 设置画布和画笔
screen = turtle.Screen()
screen.bgcolor("black")
pen = turtle.Turtle()
pen.hideturtle()
pen.speed(0)
# 定义月兔的形状和颜色
def draw_rabbit():
pen.penup()
pen.goto(-100, 0)
pen.pendown()
# 绘制月兔的头部
pen.color("white")
pen.begin_fill()
pen.circle(50)
pen.end_fill()
# 绘制月兔的身体
pen.penup()
pen.goto(-100, -70)
pen.pendown()
pen.begin_fill()
pen.circle(30)
pen.end_fill()
# 定义月饼的形状和颜色
def draw_mooncake(color):
pen.penup()
pen.goto(100, 0)
pen.pendown()
# 绘制月饼
pen.color(color)
pen.begin_fill()
pen.circle(30)
pen.end_fill()
# 定义月兔走动的动作
def walk():
pen.penup()
pen.goto(-100, -70)
pen.pendown()
for _ in range(2):
pen.setheading(60)
pen.forward(100)
pen.setheading(-60)
pen.forward(100)
# 定义月饼旋转消失又出现的动作
def rotate_and_disappear(color):
pen.penup()
pen.goto(100, 0)
pen.pendown()
for _ in range(2):
pen.color(color)
pen.begin_fill()
pen.circle(30)
pen.end_fill()
pen.clear()
# 绘制月兔和月饼的初始状态
draw_rabbit()
draw_mooncake("yellow")
# 执行动画
walk()
rotate_and_disappear("red")
turtle.done()
还不够明显的话
import turtle
# 设置画布和画笔
screen = turtle.Screen()
screen.bgcolor("black")
pen = turtle.Turtle()
pen.hideturtle()
pen.speed(0)
# 定义月兔的形状和颜色
def draw_rabbit():
pen.penup()
pen.goto(-100, 0)
pen.pendown()
# 绘制月兔的头部
pen.color("white")
pen.begin_fill()
pen.circle(50)
pen.end_fill()
# 绘制月兔的身体
pen.penup()
pen.goto(-100, -70)
pen.pendown()
pen.begin_fill()
pen.circle(30)
pen.end_fill()
# 定义月兔的走动动作
def walk():
x = -100
y = -70
angle = 0
while x < 200:
pen.clear()
draw_rabbit()
# 更新兔子的位置和角度
x += 10
y = -70 + 20 * abs((x+100) // 40 % 2 - 1) # 控制兔子跳动
angle = (angle + 10) % 360
# 移动兔子到新的位置并设置角度
pen.penup()
pen.goto(x, y)
pen.setheading(angle)
pen.pendown()
# 绘制兔子
draw_rabbit()
turtle.delay(50) # 控制兔子移动速度
# 绘制兔子的初始状态
draw_rabbit()
# 执行兔子的走动动作
walk()
turtle.done()
最后写出完整动画,
import turtle
# 设置画布和画笔
screen = turtle.Screen()
screen.bgcolor("black")
pen = turtle.Turtle()
pen.hideturtle()
pen.speed(0)
# 定义月兔的形状和颜色
def draw_rabbit():
pen.penup()
pen.goto(-100, 0)
pen.pendown()
# 绘制月兔的头部
pen.color("white")
pen.begin_fill()
pen.circle(50)
pen.end_fill()
# 绘制月兔的身体
pen.penup()
pen.goto(-100, -70)
pen.pendown()
pen.begin_fill()
pen.circle(30)
pen.end_fill()
# 定义月饼的形状和颜色
def draw_mooncake(color):
pen.penup()
pen.goto(100, 0)
pen.pendown()
# 绘制月饼
pen.color(color)
pen.begin_fill()
pen.circle(30)
pen.end_fill()
# 定义月兔的走动动作
def walk():
x = -100
y = -70
angle = 0
while x < 200:
pen.clear()
draw_rabbit()
# 更新兔子的位置和角度
x += 10
y = -70 + 20 * abs((x+100) // 40 % 2 - 1) # 控制兔子跳动
angle = (angle + 10) % 360
# 移动兔子到新的位置并设置角度
pen.penup()
pen.goto(x, y)
pen.setheading(angle)
pen.pendown()
# 绘制兔子
draw_rabbit()
turtle.delay(50) # 控制兔子移动速度
# 定义月饼旋转消失又出现的动作
def rotate_and_disappear(color):
pen.penup()
pen.goto(100, 0)
pen.pendown()
for _ in range(2):
pen.color(color)
pen.begin_fill()
pen.circle(30)
pen.end_fill()
pen.clear()
turtle.delay(100) # 控制月饼旋转速度
# 绘制月兔和月饼的初始状态
draw_rabbit()
draw_mooncake("yellow")
# 执行动画
walk()
rotate_and_disappear("red")
turtle.done()
最后,融合俩代码:
import turtle
# 设置画布和画笔
screen = turtle.Screen()
screen.bgcolor("black")
pen = turtle.Turtle()
pen.hideturtle()
pen.speed(0)
# 定义月兔的形状和颜色
def draw_rabbit():
pen.penup()
pen.goto(-100, 0)
pen.pendown()
# 绘制月兔的头部
pen.color("white")
pen.begin_fill()
pen.circle(50)
pen.end_fill()
# 绘制月兔的身体
pen.penup()
pen.goto(-100, -70)
pen.pendown()
pen.begin_fill()
pen.circle(30)
pen.end_fill()
# 定义月饼的形状和颜色
def draw_mooncake(color):
pen.penup()
pen.goto(100, 0)
pen.pendown()
# 绘制月饼
pen.color(color)
pen.begin_fill()
pen.circle(30)
pen.end_fill()
# 定义月兔的走动动作
def walk():
x = -100
y = -70
angle = 0
while x < 200:
pen.clear()
draw_rabbit()
# 更新兔子的位置和角度
x += 10
y = -70 + 20 * abs((x+100) // 40 % 2 - 1) # 控制兔子跳动
angle = (angle + 10) % 360
# 移动兔子到新的位置并设置角度
pen.penup()
pen.goto(x, y)
pen.setheading(angle)
pen.pendown()
# 绘制兔子
draw_rabbit()
turtle.delay(50) # 控制兔子移动速度
# 定义月饼旋转消失又出现的动作
def rotate_and_disappear(color):
pen.penup()
pen.goto(100, 0)
pen.pendown()
for _ in range(2):
pen.color(color)
pen.begin_fill()
pen.circle(30)
pen.end_fill()
pen.clear()
turtle.delay(100) # 控制月饼旋转速度
# 绘制月兔和月饼的初始状态
draw_rabbit()
draw_mooncake("\033[33m") # 黄色
# 执行动画
walk()
rotate_and_disappear("red")
turtle.done()
最后,代码解释
这段代码使用Python的turtle模块绘制了一个动画,包括一个跳跃的月兔和一个旋转的月饼。
首先,设置画布和画笔:创建一个黑色背景的画布和一个隐藏的画笔,并将画笔速度设置为最快(speed(0))。
接下来,定义月兔和月饼的形状和颜色:使用pen.color()和pen.begin_fill()设置画笔颜色并开始填充,使用pen.circle()绘制圆形。形状绘制完成后,使用pen.end_fill()结束填充并将画笔抬起以便移动到新的位置。
然后,定义月兔的走动动作walk(): 月兔初始位置为(-100, 0),然后向右偏移10个像素,同时根据奇偶性控制兔子的跳跃行为。在更新兔子的位置和角度后,使用pen.goto()将画笔移动到新的位置并设置画笔角度,重新绘制月兔形状。
接着,定义月饼旋转消失又出现的动作rotate_and_disappear(color): 绘制一个红色的月饼,并通过循环让月饼不断旋转,然后清除画面,并在等待一段时间的间隔后再次绘制相同的月饼达到“消失又出现”的效果。
最后,绘制月兔和月饼的初始状态,并执行动画:调用draw_rabbit()函数和draw_mooncake()函数分别绘制月兔和月饼的初始状态。然后先让月兔跳跃并向右移动,随后让月饼旋转消失又出现。
在整个过程中,使用turtle.delay()方法控制动画的速度。
最后,如果需要更多更好看的代码请关注留言吧!