猫史档案馆


【Python作品分享】新春贺卡【作品秀】

用户:CharlieCharlie查看:0 回复:0 评论:0 创建时间:2022-01-23T17:08:22


【作品展示】

center_image

 

【作品介绍】

。。。。。

 

【作品源代码】

from winsound import PlaySound, SND_ASYNC
from turtle import *
from time import sleep
from random import randint


from PIL import Image, ImageSequence
import time
图像 = Image.open('新年快乐.gif')  # 载入图片
w, h = 图像.size
#ImageSequence.Iterator(图象) 能返回图形中的每一帧。


index = 1
图形列表 = []


for frame in ImageSequence.Iterator(图像):  # 对于图形中的每一帧
    文件名 = "新年快乐" + str(index) + ".png"
    frame.save(文件名)
    图形列表.append(文件名)
    index += 1


print("拆分gif完毕!共拆成了" + str(index-1) + "张图片")


小虹 = Turtle()
小虹.pencolor("white")
小虹.penup()
小虹.speed(0)
小虹.hideturtle()
屏幕 = 小虹.getscreen()  # 得到小虹所在的画图屏幕,get是得到的意思,screen是屏幕的意思。
屏幕.setup(w, h)
屏幕.title("星空培训Python少儿编程动态音乐贺卡制作。")


屏幕.bgcolor((0, 0, 51))
for i in range(30):
    小虹.goto(randint(-300, 250), randint(-150, 150))
    小虹.dot(randint(1, 3))


小虹.color("cyan")
小虹.goto(-150, 100)
for 字 in '星空培训':
    小虹.write(字, font=("微软雅黑", 44, "normal"))
    sleep(0.3)
    小虹.setx(小虹.xcor()+80)


小虹.color("yellow")
小虹.goto(-280, 0)
for 字 in '祝大家鸡年快乐,金鸡独立,独占鳌头!':
    小虹.write(字, font=("", 20, "normal"))
    sleep(0.2)
    小虹.setx(小虹.xcor()+30)


小虹.color("white")
小虹.goto(-200, -50)
for 字 in '制作日期:2017年元旦! 作者:李兴球':
    小虹.write(字, font=("", 10, "normal"))
    sleep(0.1)
    小虹.setx(小虹.xcor()+20)


小虹.color("yellow")
小虹.goto(-250, -120)
for 字 in '本python程序源代码下载网址:':
    小虹.write(字, font=("", 10, "normal"))
    sleep(0.1)
    小虹.setx(小虹.xcor()+15)


小虹.color("yellow")
小虹.goto(-250, -150)
网址 = "http://www.HaLiFa.net/download/heka.rar"
小虹.write(网址, font=("", 10, "normal"))


#新建小明角色用来显示倒计时数字
小明 = Turtle(visible=False)
小明.pencolor("yellow")
小明.goto(0, 30)
倒数 = 5
for i in range(倒数, -1, -1):
    小明.clear()
    小明.write(i, align='center', font=("", 50, "normal"))
    sleep(1)

小明.clear()
小虹.clear()


小虹.color("white")
指针 = 0


def 动态背景():
    global 指针
    屏幕.bgpic(图形列表[指针])
    指针 = 指针+1
    指针 = 指针 % 5
    屏幕.ontimer(动态背景, 100)


动态背景()


小虹.goto(0, -230)
歌曲文件 = "中国娃娃 - 发财发福中国年.wav"
歌词文件 = "发财发福中国年歌词.lrc"
歌词列表 = []
歌词指针 = 0


f = open(歌词文件)
歌词 = f.readlines()  # 由于有换行,是多余的,所以下面要去除换行 \n
f.close()
歌词列表 = []
for 行 in 歌词:
    if 行 != '\n':
        歌词列表.append(行)

歌词行数 = len(歌词列表)
#print(歌词列表)
PlaySound(歌曲文件, SND_ASYNC)  # 异步播放音效


def 获取时间轴(指针):
    songtime = 歌词列表[指针]
    songtime = songtime.split("]")[0]
    songtime = songtime.split(":")
    songtimef = songtime[0][1:3]
    songtimef = int(songtimef)*60
    songtimem = float(songtime[1])
    return int((songtimef+songtimem)*1000)


#for i in range(歌词行数):
   #print(获取时间轴(i))
print("歌词行数:" + str(歌词行数))


歌词指针 = 0
开始时间 = time.time()


def 显示字幕():
    global 歌词指针
    global 歌词行数

    当前时间 = time.time()
    运行时间 = (当前时间-开始时间)*1000
    屏幕.title("星空培训Python少儿编程动态音乐贺卡制作。" + str(运行时间))
    if 获取时间轴(歌词指针) < 运行时间:
        小虹.clear()
        显示歌词 = 歌词列表[歌词指针].split("]")[1]
        小虹.goto(0, -230)
        小虹.pencolor("black")
        小虹.write(显示歌词, align='center', font=("", 24, "normal"))
        小虹.goto(-1, -229)
        小虹.pencolor("white")
        小虹.write(显示歌词, align='center', font=("", 24, "normal"))

        print("当前歌词指针:" + str(歌词指针) + ",歌词:" + 显示歌词)
        歌词指针 = 歌词指针+1
    if 歌词指针 < 歌词行数:
        屏幕.ontimer(显示字幕, 100)


显示字幕()


 

【提示】

部分含有Python第三方库相关内容的作品,在海龟编辑器网页端无法运行哦!如遇到这种情况,可以打开下面的链接,下载海龟编辑器客户端:

https://python.codemao.cn


回复

上一页1 页 / 共 0下一页