Pygame.draw.rect недопустимый синтаксис

#python #pygame

#python #pygame

Вопрос:

Я получаю сообщение об pygame.draw.rect(screen, (0, 255, 0), (200, 150, 100, 50), 2) ошибке, несмотря на то, что я скопировал синтаксис команды и просто разместил свои переменные.

     #! /usr/bin/env python
import pygame, sys
from pygame.locals import *
clock = pygame.time.Clock()
LEFT=1
width= 1000
height=500
running =1
x = 0
y = 0
isdown = False
screen = pygame.display.set_mode((width, height))
while running:
    for event in pygame.event.get():
        #screen.fill((90,90,90))
        if event.type == pygame.QUIT:
            running=0
        if event.type ==pygame.MOUSEBUTTONDOWN and event.button== LEFT:
            isdown = True
            t=event.pos
            x,y=t
        if event.type == pygame.MOUSEMOTION:
            if isdown:
                t=event.pos
                x,y=t
        if event.type ==pygame.MOUSEBUTTONUP and event.button== LEFT:
            isdown=False
    if isdown:
        #rect= ((32*int(x/32),(32*int(y/32)),32,32)
        pygame.draw.rect(screen,(0,255,0),(200,150,100,50),2)
    clock.tick(3000)
    pygame.display.flip()
 

Ошибка:

   File "PATH(not giving it)", line 30
    pygame.draw.rect(screen,(0,255,0),(200,150,100,50),2)
         ^
SyntaxError: invalid syntax
 

Ответ №1:

Когда я смотрю на это, я думаю, что строка над ошибочным pygame.draw вызовом, #rect= ((32*int(x/32),(32*int(y/32)),32,32) , на самом деле не закомментирована в вашем коде. В начале есть лишнее ( , что приводит к синтаксической ошибке с pygame.rect в следующей строке.