Уведомления

Группа в Telegram: @pythonsu

#1 Июль 3, 2022 21:09:58

SemTimv12
Зарегистрирован: 2021-06-29
Сообщения: 8
Репутация: +  0  -
Профиль   Отправить e-mail  

помогите с ошибкой пожалуйста AttributeError: 'pygame.Surface' object has no attribute 'get'

впервые встречаюсь с этой ошибкой


Игра - комические защитники

space_game.py

import pygame
import sys
from gun import Gun


def run():

pygame.init()
screen = pygame.display.set_mode((1200, 800))
pygame.display.set_caption('Космические защитники')
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()

run()

gun.py

import pygame

class Gun():

def __init__(self, screen):
‘инициализация пушки’

self.screen = screen
self.image = pygame.image.load(r'C:\Users\Home\PycharmProjects\pythonProject\game_space\images/file01.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)

Ошибка:AttributeError: ‘pygame.Surface’ object has no attribute ‘get’

Помогите пожалуйста

Офлайн

#2 Июль 3, 2022 21:19:40

AD0DE412
Зарегистрирован: 2019-05-12
Сообщения: 1130
Репутация: +  44  -
Профиль   Отправить e-mail  

помогите с ошибкой пожалуйста AttributeError: 'pygame.Surface' object has no attribute 'get'



1. пжлст, форматируйте код, это в панели создания сообщений, выделите код и нажмите что то вроде
2. чтобы вставить изображение залейте его куда нибудь (например), нажмите и вставьте ссылку на его url

есчщо

Офлайн

#3 Июль 3, 2022 21:47:13

SemTimv12
Зарегистрирован: 2021-06-29
Сообщения: 8
Репутация: +  0  -
Профиль   Отправить e-mail  

помогите с ошибкой пожалуйста AttributeError: 'pygame.Surface' object has no attribute 'get'

Игра - комические защитники

space_game.py

 import pygame
import sys
from gun import Gun
def run():
    pygame.init()
    screen = pygame.display.set_mode((1200, 800))
    pygame.display.set_caption('Космические защитники')
    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()
run()
gun.py

 import pygame
class Gun():
    def __init__(self, screen):
        ‘инициализация пушки’
        self.screen = screen
        self.image = 
        pygame.image.load(r'C:\Users\Home\PycharmProjects\pythonProject\game_space\images/file01.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)

Ошибка:AttributeError: ‘pygame.Surface’ object has no attribute ‘get’



Так пойдет?

Офлайн

#4 Июль 3, 2022 22:03:48

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

помогите с ошибкой пожалуйста AttributeError: 'pygame.Surface' object has no attribute 'get'

SemTimv12
Так пойдет?
сообщение об ошибке показывайте полностью



Офлайн

#5 Июль 3, 2022 22:06:07

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

помогите с ошибкой пожалуйста AttributeError: 'pygame.Surface' object has no attribute 'get'

хотя я уже кажется понял, что косяк вот тут

 self.screen_rect = screen.get.rect()
вот здесь же вы по другому писали
 self.rect = self.image.get_rect()
видите разницу?



Офлайн

#6 Июль 3, 2022 22:07:06

SemTimv12
Зарегистрирован: 2021-06-29
Сообщения: 8
Репутация: +  0  -
Профиль   Отправить e-mail  

помогите с ошибкой пожалуйста AttributeError: 'pygame.Surface' object has no attribute 'get'

Traceback (most recent call last):
File "C:\Users\Home\PycharmProjects\pythonProject\game_space\space_game.py", line 22, in <module>
run()
File "C:\Users\Home\PycharmProjects\pythonProject\game_space\space_game.py", line 12, in run
gun = Gun(screen)
File "C:\Users\Home\PycharmProjects\pythonProject\game_space\gun.py", line 11, in __init__
self.screen_rect = screen.get.rect()
AttributeError: 'pygame.Surface' object has no attribute 'get'

Так?

Офлайн

#7 Июль 3, 2022 22:20:10

SemTimv12
Зарегистрирован: 2021-06-29
Сообщения: 8
Репутация: +  0  -
Профиль   Отправить e-mail  

помогите с ошибкой пожалуйста AttributeError: 'pygame.Surface' object has no attribute 'get'

 self.rect = self.image.get_rect()
self.screen_rect = self.screen.get.rect()

Все равно выдает ошибку
 Traceback (most recent call last):
  File "C:\Users\Home\PycharmProjects\pythonProject\game_space\space_game.py", line 22, in <module>
    run()
  File "C:\Users\Home\PycharmProjects\pythonProject\game_space\space_game.py", line 12, in run
    gun = Gun(screen)
  File "C:\Users\Home\PycharmProjects\pythonProject\game_space\gun.py", line 11, in __init__
    self.screen_rect = self.screen.get.rect()
AttributeError: 'pygame.Surface' object has no attribute 'get'

Офлайн

#8 Июль 3, 2022 22:59:12

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

помогите с ошибкой пожалуйста AttributeError: 'pygame.Surface' object has no attribute 'get'

SemTimv12
ваше домашнее задание на сегодня, найти документацию к тому фреймворку который вы используете и конкретно pygame.Surface



Офлайн

#9 Июль 4, 2022 00:01:34

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9867
Репутация: +  853  -
Профиль   Отправить e-mail  

помогите с ошибкой пожалуйста AttributeError: 'pygame.Surface' object has no attribute 'get'

SemTimv12
  
self.screen_rect = screen.get.rect()
Напиши там get_rect() .



Офлайн

#10 Июль 4, 2022 21:38:25

SemTimv12
Зарегистрирован: 2021-06-29
Сообщения: 8
Репутация: +  0  -
Профиль   Отправить e-mail  

помогите с ошибкой пожалуйста AttributeError: 'pygame.Surface' object has no attribute 'get'

Я еще новичок в питоне и не понимаю некоторые вещи. Можете пожалуйста ответить на некоторые вопросы.

1 pyGame это по большей части библиотека или фреймворк?

2 Можно ли сказать что pyGame работает в программе как фреймворк?

3 В чем заключается моя ошибка? FishHook говорит поправить строку, а py.user.next говорит сделать как и было.

Извините если что то не правильно спросил, просто я только начинаю изучать программы.
Спасибо за помощь!



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version