game_function.py
def update_bullets(ai_settings,screen,ship,aliens,bullets):
# 更新子弹的位置, 并删除已消失的子弹 4303987588749
bullets.update()
# 清楚越界的子弹,防止占用内存
# 遍历子弹编组的副本,在副本中检查每颗子弹,判断是否到顶端
for bullet in bullets.copy():
# 如果子弹到顶端则删除
if bullet.rect.bottom<=0:
bullets.remove(bullet)
以上是书本上的代码,但是提示出错(本人使用的Python3,12):删除一颗子弹就自动退出程序。
系统报错提示:remove(*group)意思是在该程序中remove后应该接一个编组,将最后一句得bullet改为bullets就可以运行。
欢迎大家留言讨论。