我无法显示与项目相同的源文件夹中的图像。也给我在(x,y)下的波浪线,它告诉我 “来自外部范围的阴影名称“ x”和“ y”” 它显示了每个“ x”和“ y”,因此我将& 最后我最后的quit()告诉我 “ PEP 8:文件末尾的空白行”
对于python和pygame来说是全新的
我不确定该怎么做
import pygame
pygame.init()
display_Width = 400
display_Height = 400
gameDisplay = pygame.display.set_mode((display_Height, display_Width))
pygame.display.set_caption('Shonen Run Project')
black = (0, 0, 0)
white = (255, 255, 255)
clock = pygame.time.Clock()
crashed = False
heroImg = pygame.image.load('harper.png')
def hero(x, y):
gameDisplay.blit(heroImg, (x, y))
x = (display_Width * 0.45)
y = (display_Height * 0.8)
while not crashed:
for event in pygame.event.get():
if event.type == pygame.QUIT:
crashed = True
gameDisplay.fill(white)
hero(x,y)
pygame.display.update()
clock.tick(60)
pygame.quit()
quit()
答案 0 :(得分:0)
我猜您使用的是IDE。代码的图像加载看起来不错,只需注意,只有当当前工作目录实际上是您的python文件所在的目录,并且图像文件位于该目录中时,它才起作用。确保这一点的简单方法是:
import os
import sys
os.chdir(sys.path[0])
其他问题只是警告。
您有两个全局变量x
和y
,还有一个函数def hero(x, y):
,它也有两个自变量x
和y
。该警告告诉您,如果您访问x
内的y
或hero
,则实际上访问了 local x
或y
,并且您将无法访问 global x
或y
(它们是 shadowed )。
我建议将全局x
和y
变量重命名为更有意义的名称,并删除hero
函数,因为它几乎没有用。
PEP 8是python样式指南。您应该遵循它,因为它有助于保持代码的可读性,特别是如果您以外的其他人将要阅读您的代码时。但这当然不是法律,文件末尾缺少空白行可能不会打扰任何人……