Найти - Пользователи
Полная версия: AttributeError: 'builtin_function_or_method' object has no attribute 'get_rect' в библиотеке "pygame"
Начало » Python для новичков » AttributeError: 'builtin_function_or_method' object has no attribute 'get_rect' в библиотеке "pygame"
1
garrip91
Всем здравствуйте!

Сегодня в процессе практического изучения библиотеки “pygame” столкнулся с такой проблемой:
“ AttributeError: ‘builtin_function_or_method’ object has no attribute ‘get_rect’ ”

Это произошло до того, как я добавил ещё одну строку в свой код:
“ self.image.set_colorkey(BLACK) ”

После добавления этого участка кода появляется та же ошибка, но чуть видоизменённая:
“ AttributeError: ‘builtin_function_or_method’ object has no attribute ‘set_colorkey’ ”

Комментирую добавленную строку и снова вижу первую ошибку! :-(

Что я делаю не так? Разве библиотека “pygame” не содержит эти атрибуты???

Свой код прилагаю к настоящей теме:
FishHook
Очевидно, что self.image это метод. Метод - это функция, её надо сначала вызвать.
garrip91
FishHook
Очевидно, что self.image это метод. Метод - это функция, её надо сначала вызвать.
В смысле вызвать, если у меня за пределами функции нигде нет никаких упоминаний об этом атрибуте?…
Интерпретатор ругается на атрибут, который, как я полагаю, должен где-то вне классов, объектов, функций и прочей байды находиться (ну раз интерпретатор ругается).
А здесь я этот атрибут даже через поиск искал.
Его нигде, кроме как в теле метода (“ def __init__(self): ”), нету!
PEHDOM
предполагаю что виной всему вот эта строка
 player_img = pygame.image.load(os.path.join(img_folder, 'p1_jump.png')).convert
convert() это метод. Метод - это функция, её надо вызвать. А у вас в player_img в таком виде попадает не объект Surface а функция(метод) convert. Естественно у функции нету ни атрибута get_rect() ни set_colorkey()
garrip91
PEHDOM
предполагаю что виной всему вот эта строка
Я понял, что я в данной строке скобки в конце упустил (спасибо, что обратили моё внимание на это, кстати!).

Я эти скобки поставил, но теперь я вижу другую ошибку:
“ pygame.error: cannot convert without pygame.display initialized ”

Ну что это ещё за бред такой??? :-(
PEHDOM
garrip91
Я эти скобки поставил, но теперь я вижу другую ошибку:
“ pygame.error: cannot convert without pygame.display initialized ”
Ну очевидно, программа вам сообщает, что перед тем как делать convert() нужно инициализировать pygame.display
https://www.pygame.org/docs/ref/display.html
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB