Python编程家长会花絮_萍乡中小学Python家长会现场

Python编程家长会花絮_萍乡中小学Python家长会现场

萍乡乐学创客编程学校的Python春季班结束了,即将迎来暑假班。学完后,学生们发表了学习Python的感言,或者讲解了一个自己喜爱的程序。

萍乡乐学创客编程学校Python学生

下面是视频,用的也是Python代码实现的,背景音乐渲染的气氛挺不错的。

代码如下所示,其中的gameturtle模块安装方法是用cmd打开命令行窗口,输入 pip install gameturtle即可安装。

import os
import time
import random
from gameturtle import *
from winsound import *

def xsleep(cv,t):
    start = time.time()
    while time.time() - start < t:
        cv.update()
    
project = '萍乡乐学创客学校家长会'
root = Tk()                                    # 新建窗口
root.title('萍乡市乐学创客学校2021春季班家长会')
cv = Canvas(width=480,height=360,bg='black')   # 新建画布
cv.pack()                                      # 放置画布
root.center()

PlaySound('音乐素材/Mika - Elle Me Dit (clip officiel).wav',9)

dummy = Sprite(cv,visible=False)
dummy.color('yellow')
dummy.write(project,font=('',22,'bold'))
xsleep(cv,2)
dummy.clear()

pics = []                                  # 要展示的图片列表 
path =os.getcwd() + os.sep + '家长会'
for file in os.listdir(path):
    ext = os.path.splitext(file.lower())[-1]
    if ext in ('.jpg','.png','.bmp','.jpeg'):
       filename = path + os.sep + file
       pics.append(filename)
pics = [Image.open(im) for im in pics]
random.shuffle(pics)                      # 打乱顺序

p = Sprite(cv,pics)                       # 新建角色 
i = 0
zi = Sprite(cv,visible=False)
zi.color('yellow')
zi.sety(90)
zi.write('未来的计算机人才将从这里升起')
zi.goto(240,91)
zi.color('green')
zi.write('未来的计算机人才将从这里升起')

zi.goto(240,150)
zi.color('yellow')
zi.write('视频由Python计算机语言编程实现')

words = ['编程,就是编写程序的简称',
         '通过编写符合规则的代码,就能掌控世界',
         '编程有很多种,从机器语言到汇编语言,',
         'C及Python与Scratch图形化编程',
         '科技已进化到让人人都可以从小学编程',
         '从小学编程,长大本领高',
         '万物互联的世界,编程是一项基本技能',
         '千里之行,始于编程',         
         '夏虫不可语于冰,井蛙不可语于海',
         '燕雀安知鸿鹄之志',
         '本视频即是通过编程实现的',
         '涉及到可视化编程、图形处理、',
         '随机模块、函数知识、当循环、',
         'for循环、计数器、像素滤镜数学原理。',
         '变量、列表、洗牌算法、音乐播放等知识。',
         '欢迎您到萍乡秋收广场乐学创客学校来。'
         ]
w = Sprite(cv,visible=False)
w.color('white')
w.goto(240,330)

wc = 0
while True:
    im = pics[i]
    p.shape(im)                           # 切换到下一张图片
    xsleep(cv,1)
    for x in range(25,101,25):
        im2 = pixelate(im,x)               # 像素化图形
        p.shape(im2)                       # 切换到下一张图片
        xsleep(cv,0.1)
    i= i + 1
    i= i % len(pics)

    wc += 1;print(wc)    
    w.clear()
    w.write(words[wc%len(words)])
        
    im = pics[i]    
    for x in range(100,0,-25):
        im2 = pixelate(im,x)             # 像素化图形
        p.shape(im2)                     # 切换到下一张图片
        xsleep(cv,0.1)
    p.shape(im)                          # 切换到下一张图片
    xsleep(cv,1)
李兴球

李兴球的博客是Python创意编程原创博客