Синтаксическая ошибка приращения, даже если она должна быть правильной
Это может быть связано с некоторой глупой ошибкой, которую я просто не могу определить, но Python возвращает синтаксическую ошибку, когда я запускаю следующий код
# Imports
import pygame
import os
# Startup
pygame.init()
# Screen
size = (500, 500)
screen = pygame.display.set_mode(size, pygame.NOFRAME)
pygame.display.set_caption = ("Swinger")
pygame.mouse.set_visible(False)
clock = pygame.time.Clock()
# -- Assign Functions --
# -- Assign Classes --
# -- Assign Variables --
#Sets the color of pure white to a variable to be called
WHITE = (255, 255, 255)
#Sets the player to an image loaded from os path Swinger
Player = pygame.image.load(os.path.join("Swinger", "player.png"))
Pointer = pygame.image.load(os.path.join("Swinger", "pointer.png"))
#Sets a variable to know whether the scrpt has run once or not
FirstRun = 0
#Sets the variables to allow you to control movement
#Y axis movement Speed
MoveYSpeed = 0
#X axis movement speed
MoveXSpeed = 0
#Assigns the values later used to call the drawing
#of the player
PlayerPos = [255 += MoveXSpeed, 255 += MoveYSpeed]
#Assigns The first value of PlayerPos as a X axis value
PlayerPosX = PlayerPos[0]
#Assigns the second value of PlayerPos as a y axis value
PlayerPosY = PlayerPos[1]
это дает мне синтаксическую ошибку в строке 31 первого оператора приращения, говоря, что символ равенства равен:
Traceback (most recent call last):
File "...", line 31
PlayerPos = [255 += MoveXSpeed, 255 += MoveYSpeed]
^
SyntaxError: invalid syntax
Я только начинаю писать код, поэтому большая часть кода может не соответствовать нужному формату, и я не скопировал весь код, потому что думал, что это может быть неуместно, учитывая, что я получаю сообщение об ошибке до того, как достигну любого из другой код.
1 ответ
PlayerPos = [255 += MoveXSpeed, 255 += MoveYSpeed]
неверный синтаксис Python, нет. Что ты хотел сделать с этим выражением? +=
это не оператор, это утверждение (как =
назначение, или return
или же if test: <block>
), и вы не можете помещать утверждения внутри других утверждений.
Вы хотели использовать +
оператор сложения возможно?
PlayerPos = [255 + MoveXSpeed, 255 + MoveYSpeed]
создаст список с этими двумя суммами в качестве начальных значений.