Python趣味挑战之用pygame实现简单的金币旋转效果


Posted in Python onMay 31, 2021

一、实现逻辑

step1、保存图像到list列表。
step2、在主窗口每次显示一张list列表中的对象。

呵呵,好像就这么简单。所以,主要还是要有图片。
这里也分享一下图片给大家。

Python趣味挑战之用pygame实现简单的金币旋转效果

二、核心逻辑代码解析

(一)加载图像到list列表

def init_image():
    path = './score/'
    files = []
    dirs = os.listdir(path)
    for diretion in dirs:
        files.append(path + diretion)

    for file in files:
        bglist.append(pygame.image.load(file).convert_alpha())

(二)循环函数run实现

def run():
    i = 0
    while True:
        for event in pygame.event.get():
            if event.type == pygame.QUIT or event.type == pygame.K_F1:
                pygame.quit()
                sys.exit()
            if event.type == pygame.KEYDOWN:
                if event.key == pygame.K_ESCAPE:
                    pygame.quit()
                    sys.exit()
        screen.fill((0, 0, 0))  # 设置背景为白色
        screen.blit(bglist[i % 7], (50, 50))
        print(bglist[i % 7].get_size())
        i += 1
        fcclock.tick(fps)
        pygame.display.flip()  # 刷新窗口

(三)相关库引入及变量初始化

import sys, pygame
import os
import random
import time

pygame.init()  # 初始化pygame类
screen = pygame.display.set_mode((600, 600))  # 设置窗口大小
pygame.display.set_caption('金币翻转小游戏V1.0')  # 设置窗口标题
tick = pygame.time.Clock()
fps = 10  # 设置刷新率,数字越大刷新率越高
fcclock = pygame.time.Clock()
bglist = []

(四)main主入口实现

if __name__ == '__main__':
    init_image()
    run()

三、完整代码

import sys, pygame
import os
import random
import time

pygame.init()  # 初始化pygame类
screen = pygame.display.set_mode((600, 600))  # 设置窗口大小
pygame.display.set_caption('金币翻转小游戏V1.0')  # 设置窗口标题
tick = pygame.time.Clock()
fps = 10  # 设置刷新率,数字越大刷新率越高
fcclock = pygame.time.Clock()
bglist = []

def init_image():
    path = './score/'
    files = []
    dirs = os.listdir(path)
    for diretion in dirs:
        files.append(path + diretion)

    for file in files:
        bglist.append(pygame.image.load(file).convert_alpha())

def run():
    i = 0
    while True:
        for event in pygame.event.get():
            if event.type == pygame.QUIT or event.type == pygame.K_F1:
                pygame.quit()
                sys.exit()
            if event.type == pygame.KEYDOWN:
                if event.key == pygame.K_ESCAPE:
                    pygame.quit()
                    sys.exit()
        screen.fill((0, 0, 0))  # 设置背景为白色
        screen.blit(bglist[i % 7], (50, 50))
        print(bglist[i % 7].get_size())
        i += 1
        fcclock.tick(fps)
        pygame.display.flip()  # 刷新窗口

if __name__ == '__main__':
    init_image()
    run()

四、运行效果

Python趣味挑战之用pygame实现简单的金币旋转效果

OK,完成了,比较简单,大家都学会了吗?

到此这篇关于Python趣味挑战之用pygame实现简单的金币旋转效果的文章就介绍到这了,更多相关pygame实现金币旋转内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python sqlobject(mysql)中文乱码解决方法
Nov 14 Python
跟老齐学Python之玩转字符串(1)
Sep 14 Python
Python中防止sql注入的方法详解
Feb 25 Python
Python初学者需要注意的事项小结(python2与python3)
Sep 26 Python
python 实现返回一个列表中出现次数最多的元素方法
Jun 11 Python
Python列表对象实现原理详解
Jul 01 Python
在python中实现同行输入/接收多个数据的示例
Jul 20 Python
对pytorch中的梯度更新方法详解
Aug 20 Python
Python实现猜年龄游戏代码实例
Mar 25 Python
Python基础教程之输入输出和运算符
Jul 26 Python
python使用建议与技巧分享(二)
Aug 17 Python
Python从MySQL数据库中面抽取试题,生成试卷
Jan 14 Python
解决pytorch读取自制数据集出现过的问题
Python爬虫基础初探selenium
只用40行Python代码就能写出pdf转word小工具
pytorch 如何把图像数据集进行划分成train,test和val
May 31 #Python
Python图片检索之以图搜图
写一个Python脚本下载哔哩哔哩舞蹈区的所有视频
python中的plt.cm.Paired用法说明
May 31 #Python
You might like
对盗链说再见...
2006/10/09 PHP
session 的生命周期是多长
2006/10/09 PHP
一个php作的文本留言本的例子(三)
2006/10/09 PHP
destoon整合ucenter后注册页面不跳转的解决方法
2014/06/21 PHP
thinkphp区间查询、统计查询与SQL直接查询实例分析
2014/11/24 PHP
php简单计算年龄的方法(周岁与虚岁)
2016/12/06 PHP
PDO::commit讲解
2019/01/27 PHP
php面试实现反射注入的详细方法
2019/09/30 PHP
JS控件autocomplete 0.11演示及下载 1月5日已更新
2007/01/09 Javascript
JavaScript 操作键盘的Enter事件(键盘任何事件),兼容多浏览器
2010/10/11 Javascript
jQuery实现简单倒计时功能的方法
2016/07/04 Javascript
JS简单实现仿百度控制台输出信息效果
2016/09/04 Javascript
jquery实现图片切换代码
2016/10/13 Javascript
深入了解JavaScript的逻辑运算符(与、或)
2016/12/20 Javascript
C#实现将一个字符转换为整数
2017/12/12 Javascript
QQ跳转支付宝并自动领红包脚本(最新)
2018/06/22 Javascript
详解Require.js与Sea.js的区别
2018/08/05 Javascript
Vue.js中使用iView日期选择器并设置开始时间结束时间校验功能
2018/08/12 Javascript
微信小程序购物车、父子组件传值及calc的注意事项总结
2018/11/14 Javascript
node Buffer缓存区常见操作示例
2019/05/04 Javascript
Vue3.0的优化总结
2020/10/16 Javascript
[01:03]DOTA2新的征程 你的脚印值得踏上
2014/08/13 DOTA
python爬虫框架scrapy实现模拟登录操作示例
2018/08/02 Python
Python3删除排序数组中重复项的方法分析
2019/01/31 Python
在python中做正态性检验示例
2019/12/09 Python
在Keras中利用np.random.shuffle()打乱数据集实例
2020/06/15 Python
解析python 中/ 和 % 和 //(地板除)
2020/06/28 Python
filter使用python3代码进行迭代元素的实例详解
2020/12/03 Python
HTML5 层的叠加的实现
2020/07/07 HTML / CSS
Scholastic父母商店:儿童书籍
2017/01/01 全球购物
Fossil加拿大官网:化石手表、手袋、首饰及配饰
2019/04/23 全球购物
实习生个人的自我评价
2013/12/08 职场文书
《十六年前的回忆》教学反思
2014/02/14 职场文书
大学军训的体会
2014/11/08 职场文书
2016年大学生党员公开承诺书
2016/03/24 职场文书
解读Vue组件注册方式
2021/05/15 Vue.js