“圣诞季如期而至,圣诞快乐· 倒计时开启啦,一起期待它的到来吧~”
——Python是世界上最好的语言
圣诞节马上就来了,冬日里多一抹温暖总是好的。
那这样一个节日的Python可以怎么去书写呢?
小编依旧整理了系列精选圣诞节文案+Python小案例
分享给大家
希望能给你带来寒冷冬季的一丝温暖
正文 一、环境安装本文需要的环境如下
Python、Pycharm 安装包:我用的是3.7的Python跟2019年的社区版Pycharm,这个可以看大家的
基本上都是可以用的,代码兼容都可以运行的。
Pygame游戏模块、tkinter界面化模块、turtle绘图模块以及部分自带的模块就不说了。
环境安装不会的可以找我拿安装包跟安装的视频、相应的Pycharm专业版的永久激活码这边也是有
的但是有版本限制有的不能激活的哈。
第三方库的安装通常是:
pip install +模块名
或者是感觉安装速度太慢可以添加镜像源文件的,这边我通常用的是豆瓣的镜像源:
pip install -i https://pypi.douban.com/simple/ +模块名二、圣诞有你 不必有礼
实现本文效果的整体思路是:选择背景图片和音乐—设置动态效果—播放音乐。
(下雪了+圣诞的背景就很完美了)
代码演示:
pygame.init() #初始化pygame SIZE = (790, 430) #设置屏幕宽长,根据背景图片调整(或者调整图片) bg_size = width, height = 300, 200 #设置开始和关闭界面窗口 bg_rgb = (255, 255, 255) screen = pygame.display.set_mode(bg_size) screen = pygame.display.set_mode(SIZE) screen1 = pygame.display.set_mode(SIZE) pygame.display.set_caption("圣诞节快乐") ori_bg = Image.open(bgpath) new_bg = ori_bg.resize((790, 430)) new_bg.save(Folderpath + '/new_bg.gif') bg = pygame.image.load(Folderpath + '/new_bg.gif') snow_list = [] #雪花列表 for i in range(300): x_site = random.randrange(0, SIZE[0]) #雪花圆心位置 y_site = random.randrange(0, SIZE[1]) #雪花圆心位置 X_shift = random.randint(-1, 1) #x轴偏移量 radius = random.randint(4, 6) #半径和y周下降量 snow_list.append([x_site, y_site, X_shift, radius]) clock = pygame.time.Clock() #创建设置帧率对象 track = pygame.mixer.music.load(mucpath) # 加载音乐文件 pygame.mixer.music.play() # 开始播放音乐流 pygame.mixer.music.fadeout(600000) #设置音乐多久慢慢淡出结束 play_image = pygame.image.load(bgpath).convert_alpha() # 创建播放图片surface对象 pause_image = pygame.image.load(bgpath).convert_alpha() # 创建暂停图片surface对象 pause_rect = pause_image.get_rect() #获取播放矩形框 print(pause_rect.width,pause_rect.height) #获取暂停矩形框 pause_rect.left, pause_rect.top = (width - pause_rect.width) // 2, (height - pause_rect.height) // 2 pause = False # 定义播放标志位 while True: # 查找队列事件 for event in pygame.event.get(): # 查找点击关闭窗口事件 if event.type == pygame.QUIT: sys.exit() # 查找鼠标左右击事件 if event.type == MOUSEBUTTONDOWN: # 检测鼠标左击是否按下 if event.button == 1: pause = not pause # 检测鼠标右击是否按下 if event.button == 3: pause = not pause # 检测键是否按下 if event.type == KEYDOWN: # 检测是否为空格键按下 if event.key == K_SPACE: pause = not pause # 填充界面背景 screen.fill(bg_rgb) # 空格控制播放和暂停,并显示相应的图片 if pause: pygame.mixer.music.pause() screen.blit(pause_image, pause_rect) else: pygame.mixer.music.unpause() screen.blit(play_image, pause_rect) screen1.blit(bg, (0, 0)) #图片背景 j = 0 for i in range(len(snow_list)): j += 1 if j<10: pygame.draw.circle(screen1, (255, 255, 255), snow_list[i][:2], snow_list[i][3]-3) elif j<20: pygame.draw.circle(screen1, (random.randint(200, 255), random.randint(200, 255), random.randint(200, 255)), snow_list[i][:2], snow_list[i][3]-3) elif j<30: pygame.draw.circle(screen1, (random.randint(100, 200), random.randint(100, 200), random.randint(100, 200)), snow_list[i][:2], snow_list[i][3]-3) elif j<40: pygame.draw.circle(screen1, (random.randint(0, 100), random.randint(0, 100), random.randint(0, 100)), snow_list[i][:2], snow_list[i][3]-3) else: pygame.draw.circle(screen1, (random.randint(0, 255), random.randint(0, 255), random.randint(0, 255)), snow_list[i][:2], snow_list[i][3]-3) # 移动雪花位置(下一次循环起效) snow_list[i][0] += snow_list[i][2] snow_list[i][1] += snow_list[i][3] if snow_list[i][1] > SIZE[1]: #判断雪花位置是否超出屏幕,是的话重设位置 snow_list[i][0] = random.randrange(0, SIZE[0]) snow_list[i][1] = random.randrange(0, SIZE[1]) pygame.display.flip() #刷新屏幕 clock.tick(20) pygame.quit() #退出三、效果展示
背景的图片都是可以自己修改的哈: 完整项目源码点这里
总结圣诞节即将来临,欢快的乐曲燃起圣诞的激情,璀璨的灯火迎来圣诞的欢快,周围,充满了圣诞浪
漫的气氛。还有最后10来天时间,一起迎接圣诞吧~
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)