@yfuna

Как решить ошибку UnboundLocalError при запуске кода?

При запуске кода вылетают две ошибки:

File "D:\1950\main.py", line 35, in <module>
    run()
  File "D:\1950\main.py", line 10, in run
    gun = gun(screen)
UnboundLocalError: local variable 'gun' referenced before assignment

Код:

import pygame
import sys

def run():

	pygame.init()
	screen = pygame.display.set_mode((1000, 500))
	pygame.display.set_caption("1950")
	bg_color = (0, 0, 0)
	gun = gun(screen)

	while True:
		for event in pygame.event.get():
			if event.type == pygame.QUIT:
				sys.exit()

		screen.fill(bg_color)
		gun.output()
		pygame.display.flip()

# пушка

def __init__(self, screen):

		self.screen = screen
		self.image = pygame.image.load('images/123321.png')
		self.rect = self.image.get_rect()
		self.screen_rect = screen.get_rect()
		self.rect.centerx = self.screen_rect.centerx
		self.rect.bottom = self.screen_rect.bottom

def output(self):

		self.screen.blit(self.image,self.rect)
run()
  • Вопрос задан
  • 74 просмотра
Решения вопроса 1
sergey-gornostaev
@sergey-gornostaev Куратор тега Python
Седой и строгий
Во-первых, в приведённом вами коде не определена функция gun. Во-вторых, делается попытка затереть имя функции именем переменной.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы