微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

为什么我的代码真的很慢,我该如何改进它?

如何解决为什么我的代码真的很慢,我该如何改进它?

这是我的代码idk为什么它运行这么慢 为什么我的代码运行这么慢请帮帮我! 提前谢谢你

import pygame
from rgb import *
from pygame.constants import *
pygame.init()

height=700
width=1500
center=(780,450)
ball_pos=[500,550]
sky_pos=[0,-1000]


screen = pygame.display.set_mode((0,0),pygame.FULLSCREEN)
pygame.display.update()

running=True
while running:
    for event in pygame.event.get():
        keys = pygame.key.get_pressed()
        if keys[K_SPACE]:
            running=False
            pygame.display.update()
    sky=pygame.image.load("sky.jpg")



    if keys[K_RIGHT]:
        sky_pos[0]-=1
    screen.blit(sky,sky_pos)

    class Circle:
        pygame.draw.circle(screen,green,ball_pos,50)
    pygame.display.update()
    screen.fill(black)

pygame.quit()

我尝试了一切,但没有任何效果 我想让天空平滑地向左移动,虽然我不知道怎么做!

解决方法

您的代码存在一些问题,但最明显的是您正在将图像加载到应用程序循环中。 pygame.image.load 非常耗时,因为它必须从数据存储中读取图像。

在应用程序循环之前加载一次图像,而不是连续循环中:

sky=pygame.image.load("sky.jpg")      # <--- ADD

running=True
while running:
    # [...]

    # sky=pygame.image.load("sky.jpg")  <--- DELETE

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。