1

私は中学生の初心者です。動作していない短いコードがあります。

board=[]
temp=[]

for var0 in range(17):
    temp.append('  ')
for var in range(17):
    board.append(temp)
class group:
    def __init__(self):
        self.f=[]
        self.x=[]
        self.y=[]

groupb=[]
groupw=[]

while 1:
    for var0 in range(17):
        for var1 in range(17):
            if var1==16:
                print((board[var0])[16])
            else:
                print((board[var0])[var1],end='')
    move=input()
    move=(move.lower()).split()
    move[1]=int(move[1])
    move[2]=int(move[2])
    if move[0]=='b':
        board[move[1]][move[2]]=' b'
        for var0 in range(len(groupb)):
            if (move[1]-1 in groupb[var0].x or move[1]+1 in groupb[var0].x or move[1] in groupb[var0].x) and (move[2]-1 in groupb[var0].y or move[2]+1 in groupb[var0].y or move[2] in groupb[var0].y):
                (groupb[var0].x).append(move[1])
                (groupb[var0].y).append(move[2])
                temp=1
        if temp!=1:
            groupb.append('')
            groupb[len(groupb)-1]=group()
    elif move[0]=='w':
        board[move[1]][move[2]]=' w'
        for var0 in range(len(groupw)):
            if (move[1]-1 in groupw[var0].x or move[1]+1 in groupw[var0].x or move[1] in groupw[var0].x) and (move[2]-1 in groupw[var0].y or move[2]+1 in groupw[var0].y or move[2] in groupw[var0].y):
                (groupw[var0].x).append(move[1])
                (groupw[var0].y).append(move[2])
        if temp!=1:
            groupw.append('')
            groupw[len(groupb)-1]=group()
    else:
        print('TurnError')

しかし、実行しようとするたびに、1つの文字だけが必要な場合は、列全体が吐き出されます。

     b                        
     b                        
     b                        
     b                        
     b                        
     b                        
     b                        
     b                        
     b                        
     b                        
     b                        
     b                        
     b                        
     b                        
     b                        
     b                        
     b                        

誰かが私が間違っていることを教えてもらえますか?私は本当に混乱しています。

4

1 に答える 1

0

ダンが言ったように、答えはboard.append(temp)をboard。(list(temp))に変更することです。tempを繰り返し参照していました。

于 2013-01-28T12:20:19.210 に答える