我是一个初学者,我想用乌龟编写一个简单的游戏。这个想法是让一个玩家和多个敌人。当玩家击中敌人时,敌人会改变位置(随机)。但是,当我创建一个用于制作多个敌对对象的for循环时,出现了此索引错误:
Traceback (most recent call last):
File "/Users/name/PycharmProjects/untitled1/Testing", line 5, in <module>
enemys[count].append(turtle.Turtle())
IndexError: list index out of range
我尝试使用range(0, len(enemys))
,但是它没有达到我想要的目的,因为enemys
的长度为零,所以它不会成为敌人。这是我的代码:
import turtle
maxEnemies = 6
enemys= []
for count in range(0, maxEnemies):
enemys[count].append(turtle.Turtle())
enemys[count].speed(0)
enemys[count].shape("circle")
enemys[count].color("red")
enemys[count].penup()
enemys[count].setpos(random.randint(-300, 300), random.randint(-300, 300))
我的期望是它将产生6个物体,全部为红色,圆形等。
答案 0 :(得分:1)
您可以这样做,甚至不需要Call:
lm(formula = y ~ x1 + x2)
Residuals:
Min 1Q Median 3Q Max
-6 -2 0 2 6
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 74.0000 3.4226 21.621 1.14e-07 ***
x1 1.8000 0.6071 2.965 0.021 *
x2 0.4000 0.3071 1.303 0.234
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 4.781 on 7 degrees of freedom
Multiple R-squared: 0.9971, Adjusted R-squared: 0.9963
F-statistic: 1209 on 2 and 7 DF, p-value: 1.291e-09
变量。
count
我对import turtle
maxEnemies = 6
enemys= []
for _ in range(0, maxEnemies):
enemy = turtle.Turtle()
enemy.speed(0)
enemy.shape('circle')
enemy.color('red')
enemy.penup()
enemy.setpos(random.randint(-300, 300), random.randint(-300, 300))
enemys.append(enemy)
不太了解,因此语法可能会略有不同。
答案 1 :(得分:0)
enemys[count].append()
会将值附加到列表,因为您在列表enemys
的元素上使用它,它将尝试附加到enemys
内的列表,但它为空所以它给出了错误。
这是正确的代码:
for count in range(0, maxEnemies):
enemys.append(turtle.Turtle())
enemys[count].speed(0)
enemys[count].shape("circle")
enemys[count].color("red")
enemys[count].penup()
enemys[count].setpos(random.randint(-300, 300), random.randint(-300, 300))