Я пытаюсь добавить новый ряд капель дождя в группу спрайтов, когда ряд спрайтов удаляется из группы.Я хотел сделать это с помощью оператора if, чтобы проверить, если во время функции обновления, чтобы увидеть, соответствует ли предыдущий len (группа) len (группа) после удаления.Однако, когда я попытался вызвать атрибут функции в функции before для сравнения в функции after, я получил сообщение, что «AttributeError: NoneType» объект не имеет атрибута «raincount» ».Я некоторое время работал над этим, чтобы заставить его работать, и я надеюсь, что этот последний способ, наконец, позволит мне проверить, когда строка капли дождя будет удалена.
Я попытался передать логическое истинное утверждение из методав классе спрайтов, который удаляет спрайты.Это не удалось, так как он просто генерировал одну каплю для оценки.Я попытался настроить оператор if, не передавая группу (rainfall) в качестве аргумента в функции before.Это не сработало.Я попробовал снова после прохождения дождя в качестве аргумента, и это тоже не сработало.
def dropcount(rainfall):
raincount = len(rainfall)
def dropground():
rainchange = len(rainfall)
rainamt = dropcount(rainfall).raincount
if (rainamt != rainchange):
print("This works")
else:
print("This does not work")
def update_screen(rainfall):
screen.fill((135, 206, 235))
dropcount(rainfall)
rainfall.update()
dropground()
rainfall.draw(screen)
pygame.display.flip()
Я ожидал, что оператор if будет оцениваться снова и снова в цикле, и когда строка удаляется из группы, тогда оператор оценивается как истинный, и я могу добавить еще одну строку.Вместо этого я получаю
AttributeError: у объекта 'NoneType' нет атрибута 'raincount'
Спасибо за вашу помощь.