road_mapという二次元配列の(2,3)に2という数値を代入したいのですが、
すべての列に代入されてしまいます。わかる方いらっしゃいましたら教えてください。
python
1board_x=0 2board_y=0 3road_w=0 4road_map=[] 5def setup(): 6 size(800,600) 7 make_board(13,9,46) 8 init_maze() 9def draw(): 10 draw_maze() 11def make_board(x,y,w): 12 global board_x,board_y,road_w,road_map 13 board_x=x 14 board_y=y 15 road_w=w 16 road_map=[[0]*board_y]*board_x 17def init_maze(): 18 for x in range(board_x): 19 for y in range(board_y): 20 road_map[x][y]=1 21 for x in range(3,board_x-3): 22 for y in range(3,board_y-3): 23 road_map[x][y]=0 24 road_map[2][3]=2 25 road_map[board_x-3][board_y-4]=3 26 print(road_map) 27 28def draw_maze(): 29 noStroke() 30 background(100) 31 for x in range(2,board_x-3): 32 for y in range(2,board_y-3): 33 if road_map[x][y]==0: 34 fill(100,0,0) 35 elif road_map[x][y]==1: 36 fill(0,200,0) 37 elif road_map[x][y]==2: 38 fill(200,200,0) 39 elif road_map[x][y]==3: 40 fill(200,0,200) 41 rect(road_w*x,road_w*y,road_w,road_w) 42
kekka
1[[1, 1, 1, 2, 0, 3, 1, 1, 1], [1, 1, 1, 2, 0, 3, 1, 1, 1], [1, 1, 1, 2, 0, 3, 1, 1, 1], [1, 1, 1, 2, 0, 3, 1, 1, 1], [1, 1, 1, 2, 0, 3, 1, 1, 1], [1, 1, 1, 2, 0, 3, 1, 1, 1], [1, 1, 1, 2, 0, 3, 1, 1, 1], [1, 1, 1, 2, 0, 3, 1, 1, 1], [1, 1, 1, 2, 0, 3, 1, 1, 1], [1, 1, 1, 2, 0, 3, 1, 1, 1], [1, 1, 1, 2, 0, 3, 1, 1, 1], [1, 1, 1, 2, 0, 3, 1, 1, 1], [1, 1, 1, 2, 0, 3, 1, 1, 1]]
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/05/04 10:58