【发布时间】:2014-02-24 15:00:29
【问题描述】:
所以我正在编写一个跳棋游戏,我遇到的问题是在一个循环中创建多个棋子。我有代码的类创建部分,我不会在这里发布,其余的,我要发布,但我不知道如何更改循环将要使用的变量。如果您能帮我解决这个问题,我将不胜感激。
很抱歉将我的代码发布为图片,我是这个网站(和编程)的新手,无法格式化以便网站接受我的帖子。我真的希望你们能帮助我!
感谢您的帮助!
进一步说明:每次循环运行时,我都需要使用不同的“片段”创建。这意味着第一个循环必须创建piece1,然后是piece2,然后是piece3......等等
编辑:发布整个代码。我知道格式不对,没办法。所以,希望有人能解决它。
class Piece:
def __init__(self, kind, yposition, xposition):
self.color = kind
self.ypos = xposition
self.xpos = yposition
def getColor(self):
return self.getColor
def adjustY(self, change):
self.ypos = self.ypos + change
def adjustX(self, change):
self.xpos = self.xpos + change
def getY(self):
return self.ypos
def getX(self):
return self.xpos
def mover(self, direction):
self.direc = direction
if self.direc == "right" and self.color == "white":
for n in alist:
if n.getY == (self.getY - 1) and n.getX == (self.getX + 1):
pass
# NOT YET IMPLEMENTED
else:
self.adjustY(-1)
self.adjustX(+1)
elif self.direc == "left" and self.color == "white":
for n in alist:
if n.getY == (self.getY - 1) and n.getX == (self.getX - 1):
pass
# NOT YET IMPLEMENTED
else:
self.adjustY(-1)
self.adjustX(-1)
elif self.direc == "right" and self.color == "black":
for n in alist:
if n.getY == (self.getY + 1) and n.getX == (self.getX + 1):
pass
# NOT YET IMPLEMENTED
else:
self.adjustY(+1)
self.adjustX(+1)
else:
for n in alist:
if n.getY == (self.getY + 1) and n.getX == (self.getX - 1):
pass
# NOT YET IMPLEMENTED
else:
self.adjustY(+1)
self.adjustX(-1)
piece1 = 0
piece2 = 0
piece3 = 0
piece4 = 0
piece5 = 0
piece6 = 0
piece7 = 0
piece8 = 0
piece9 = 0
piece10 = 0
piece11 = 0
piece12 = 0
alistb1 = [piece1,piece2,piece3,piece4,piece5,piece6,piece7,piece8,piece9,piece10,piece11,piece12]
k = 2
for i in range(0,11):
if i >= 0 and i <5:
j = 8
m = 0
elif i >= 5 and i < 9:
j = 7
m = 1
else:
j = 6
m = 0
alistb1[i] = Piece("white",j,(m + 1 + i * k))
print(alistb1[i].getY())
# print(piece7.getY()) test reasons
PS: def mover 还没准备好。
【问题讨论】:
-
你能修复你的帖子吗?将代码缩进 4 个空格,它将呈现为代码块。另外,做发布你所有的代码。
-
如有疑问,点击橙色问号即可查看markdown编辑帮助工具栏。或者,阅读this help page。
-
我想我已经完全修复了你的代码。还有一件事:don't use tabs for indentation.
-
谢谢,希望有人能回答我:D
-
@farmerjoe 请回滚您的编辑,它在语法上不正确。
标签: python arrays variables python-3.x