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中非常实用的一些功能和函数分享
Feb 14 Python
深入讲解Python编程中的字符串
Oct 14 Python
python3爬取各类天气信息
Feb 24 Python
Python实现调用另一个路径下py文件中的函数方法总结
Jun 07 Python
python中pika模块问题的深入探究
Oct 13 Python
PyCharm鼠标右键不显示Run unittest的解决方法
Nov 30 Python
numpy中的ndarray方法和属性详解
May 27 Python
Python Numpy库常见用法入门教程
Jan 16 Python
Python实现在Windows平台修改文件属性
Mar 05 Python
5行Python代码实现图像分割的步骤详解
May 25 Python
Python3.9最新版下载与安装图文教程详解(Windows系统为例)
Nov 28 Python
Python 流媒体播放器的实现(基于VLC)
Apr 28 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
PHP 利用AJAX获取网页并输出的实现代码(Zjmainstay)
2012/08/31 PHP
功能强大的PHP POST提交数据类
2016/07/15 PHP
js 数组实现一个类似ruby的迭代器
2009/10/27 Javascript
根据出生日期自动取得星座的js代码
2010/07/20 Javascript
Jquery使用Firefox FireBug插件调试Ajax步骤讲解
2013/12/02 Javascript
JavaScript作用域链示例分享
2014/05/27 Javascript
jQuery 如何给Carousel插件添加新的功能
2016/04/18 Javascript
jquery dataTable 获取某行数据
2017/05/05 jQuery
vue使用keep-alive实现数据缓存不刷新
2017/10/21 Javascript
JavaScript中EventLoop介绍
2018/01/22 Javascript
基于angular6.0实现的一个组件懒加载功能示例
2018/04/12 Javascript
小程序测试后台服务的方法(ngrok)
2019/03/08 Javascript
详解jQuery中的getAll()和cleanData()
2019/04/15 jQuery
vue中使用element组件时事件想要传递其他参数的问题
2019/09/18 Javascript
vue获取data数据改变前后的值方法
2019/11/07 Javascript
JS表格的动态操作完整示例
2020/01/13 Javascript
浅析Python中的多进程与多线程的使用
2015/04/07 Python
Python读取网页内容的方法
2015/07/30 Python
Python发展简史 Python来历
2019/05/14 Python
postman传递当前时间戳实例详解
2019/09/14 Python
基于python2.7实现图形密码生成器的实例代码
2019/11/05 Python
用Python去除图像的黑色或白色背景实例
2019/12/12 Python
解决安装pyqt5之后无法打开spyder的问题
2019/12/13 Python
Python使用pyyaml模块处理yaml数据
2020/04/14 Python
浅谈css3中的渐进增强和优雅降级
2017/12/01 HTML / CSS
GUESS西班牙官方网上商城:美国服饰品牌
2017/03/15 全球购物
Linux管理员面试题 Linux admin interview questions
2016/07/08 面试题
4s店活动策划方案
2014/08/25 职场文书
2014年房地产销售工作总结
2014/12/01 职场文书
车辆安全隐患排查制度
2015/08/05 职场文书
2019让人心动的商业计划书
2019/06/27 职场文书
解决python存数据库速度太慢的问题
2021/04/23 Python
总结Python常用的魔法方法
2021/05/25 Python
SQL SERVER实现连接与合并查询
2022/02/24 SQL Server
Python捕获、播放和保存摄像头视频并提高视频清晰度和对比度
2022/04/14 Python
微软团队与 NASA 科学家和惠普企业(HPE)的工程师合作
2022/04/21 数码科技