Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 我创造了一个游戏空间入侵者与多个敌人_Python_Python 3.x_Pygame - Fatal编程技术网

Python 我创造了一个游戏空间入侵者与多个敌人

Python 我创造了一个游戏空间入侵者与多个敌人,python,python-3.x,pygame,Python,Python 3.x,Pygame,我想创建一个额外的敌人。我有一个在列表中循环的问题。但是当我这样做时,我不断地得到这个错误: enemyX[i] += enemyX_change[i] IndexError: list index out of range 这是我的密码: num_of_enemies = 10 number = 1 enemyX = [] enemyX_change = [] for i in range(num_of_enemies): enemyX.append(i)

我想创建一个额外的敌人。我有一个在列表中循环的问题。但是当我这样做时,我不断地得到这个错误:

   enemyX[i] += enemyX_change[i]
   IndexError: list index out of range
这是我的密码:

num_of_enemies = 10
number = 1 
enemyX = []
enemyX_change = []
for i in range(num_of_enemies):
        enemyX.append(i)
        enemyX_change.append(3)

print(len(enemyX))
print(len(enemyX_change))
num_of_enemies += number
for i in range(num_of_enemies):
        enemyX[i] += enemyX_change[i]

我不确定我是否完全理解您的代码。
但是,您从未将
元素添加到您的
Enemy
列表中,但您的
敌人数量不断增加。
因此,因为在时间零点,
len(enemyY)=num\u of_敌人
,您只需要在
num\u of_敌人
(第一次碰撞发生后)中添加一个,即可查看
enemyY[len(enemyY)]
。。。显然,这超出了范围。

如果你的敌人数量保持不变,考虑删除变量<代码> NothOfOy敌人< /C> >(或者让它成为常量)。 如果您的敌人数量发生变化,请不要忘记将

元素添加到您的列表中


这是清楚的还是有用的?

谢谢你的关注,它确实帮助了我,但我在上得到了这个错误:enemyX[I]+=enemyX_change[I],如果你改变了
敌人的长度(即敌人的数量),你也改变了
敌人的长度(适用于
X
Y
)。您能否编辑您的初始答案,以显示代码中新的重要部分以及伴随而来的错误?如果没有代码或错误消息,我很难理解它…我编辑代码是为了显示代码的重要部分以及伴随它而来的错误。现在呢?对于给您带来的不便,我深表歉意。。。但是我们现在没有足够的信息。我已经评论了你最初的问题。你能在循环之前/循环中打印(len(敌人),len(enemyX_change))吗?是的,我试过了,我意识到:“num_of_敌人+=1”不会改变列表的长度。那么每次“num_of_敌人”我如何改变列表的长度呢增加1?也许您可以在每次修改
num\u of\u敌人
后更新您的列表,以便确保元素的数量始终相同。如果您将程序更改为OOP(面向对象编程),则可以在变量的
setter
内执行操作(但此解决方案不在您的问题范围内),谢谢!但在你回答之前,我想明白了!所以我添加了另一个变量:“num_of_敌人_full=100”,最大敌人数,我不断添加更多敌人