首页 > 解决方案 > 如何将一个变量与另一个变量分开?

问题描述

我正在编写一个将地图从一个角落导航到另一个角落的函数,该地图采用列表列表的形式,0 是空格,1 是墙壁。像这样:

[
[0, 0, 0, 0, 0, 0],
[1, 1, 1, 1, 1, 0],
[0, 0, 0, 0, 0, 0],
[0, 1, 1, 1, 1, 1],
[0, 1, 1, 1, 1, 1],
[0, 0, 0, 0, 0, 0]
]

我的代码用 2 标记了它所在的空间,这样它就不会自行返回。代码多次遍历地图以尝试找到较短的路线,但这意味着每次通过时,都必须重置地图。然而,似乎每次随着地图的其他变量发生变化,地图被传递给的变量都会发生变化,所以我不能保留原始副本。这似乎只发生在它被传递给函数而不是在函数中设置时。我尝试了几种不同的方法,比如设置多个其他变量,通过在 for 循环中附加变量来传递每个列表,清除其中一个变量,但我似乎找不到问题,我从来没有这个以前的问题,我很困惑。有任何想法吗?

标签: python

解决方案


你能发布一些代码吗?

而不是直接将原始地图传递给在地图中导航的函数。只需复制地图并将其存储在另一个变量中。将此新变量传递给在地图中导航的函数。


推荐阅读