为什么我的函数正在编辑一个我没有指定的变量?

Why is my function editing an variable i didnt specify?

print(generated)
grid = Main(generated,boxes)
print("gnen")
print(generated)
print("grid")
print(grid)

对于上下文:这是一个数独生成器,Main() 解决了一个数独问题,returns 解决了一个数独问题。然而生成被编辑。

任何帮助将不胜感激!

您正在改变函数中的 generated,您不应该在文件顶部添加此行

import copy

然后将函数Main编辑为

def Main(your_variable_name_here, your_variable_name_here2):
    your_variable_name_here_ = copy.deepcopy(your_variable_name_here)

在所有 Main 函数中更改此设置,即在编辑函数后使用 your_variable_name_here_ 而不是 your_variable_name_here

https://docs.python.org/3/library/copy.html#copy.deepcopy