我正在使用Python 2.7和Pygame 1.9.1
pygame和IDLE在某些方面彼此不喜欢的事实无关紧要,因为我也尝试将其作为.py文件运行。
这有效:
import pygame
y = 0
dir = 1
running = 1
width = 800
height = 600
screen = pygame.display.set_mode((width, height))
linecolor = 255, 0, 0
bgcolor = 0, 0, 0
while running:
event = pygame.event.poll()
if event.type == pygame.QUIT:
running = 0
screen.fill(bgcolor)
pygame.draw.line(screen, linecolor, (0, y), (width-1, y))
y += dir
if y == 0 or y == height-1: dir *= -1
pygame.display.flip()
但这不起作用:
import pygame
y = 0
dir = 1
running = 1
width = 800
height = 600
linecolor = 255, 0, 0
bgcolor = 0, 0, 0
screen = pygame.display.set_mode((640, 400))
while running:
event = pygame.event.poll()
if event.type == pygame.QUIT:
running = 0
screen.fill(bgcolor)
pygame.draw.aaline(screen, linecolor, (0, y), (width-1, y)
y += dir
if y == 0 or y == height-1: dir *= -1
pygame.display.flip()
谁能解释这些差异,为什么一个人能胜过另一个人?
唯一的区别似乎是两条线的位置:
linecolor = 255, 0, 0
和
bgcolor = 0, 0, 0
最佳答案
但这不是唯一的区别。这是语法错误:
pygame.draw.aaline(screen, linecolor, (0, y), (width-1, y)
它与上面的区别还在于,它调用
aaline
而不是line
,并且缩进了8个空格而不是4个空格。这些差异中的任何一个都可能引起问题(因为对我来说,8个空格的缩进表示一种可能标签和空格的混合。)同样,通常,当您从一段代码中获取错误时,发布堆栈跟踪是一个好主意。它们包含有用的信息。
关于python - Python with/Pygame-这两组之间的区别?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9254970/