我继续制作我的数独求解器,但我的2d列表有问题。
我的数独文件txt如下所示:
..3 ... ...
etc...
现在,在这里,使用此功能:
def grid_index(grid, value):
for i, row in enumerate(grid):
for j, cell in enumerate(row):
if cell == value:
return i, j
return -1, -1
print("Coords:",grid_index(sudoku, "."))
我找到了第一个需要改变的空元素。输出为(0,0)。
现在,我的意思是更换元素“。”乘以1(例如)坐标。
我的改变功能是:
def solve_next_unsolved(sudoku):
coords = grid_index(sudoku, ".") # so here i get coordinate to the point element
number_to_input = 1
我应该获得带坐标的元素吗?如何使用grid_index()
更改1
函数找到的元素?
答案 0 :(得分:1)
为什么不简单地使用索引更改列表项的值?
grid[i][j] = 1 # Or whatever value you want
答案 1 :(得分:0)
import pandas as pd
grid = pd.dataframe(your_initial_grid)
然后您可以通过以下方式轻松更改案例值:
grid.iloc[i,j] = whatever_number_you_want