在Python中表示二维网格的最有效方法

时间:2013-01-13 00:18:38

标签: python graph

我是Python的新手,并且一直在努力解决一些编程问题,以便更好地掌握语言。 到目前为止,我已经在https://www.python.org/doc/essays/graphs/阅读了圭多的文章。这有助于我了解如何使用图表。 但是,竞争性编程问题主要是二维网格:

U..X
..X.
X..X
..X.

我如何用Python代表那些?列表清单是一个很好的代表吗?是否有更好或更“Pythonic”的方法?感谢。

2 个答案:

答案 0 :(得分:2)

列表的列表通常适用于网格的大多数用途,但如果您对使用二维数组执行更高级的操作感兴趣,则可能需要查看NumPy。 NumPy在C中实现,效率很高;它有比你想要的更多的功能,但无论如何它值得一看。

答案 1 :(得分:0)

在Python中,嵌套列表通常是要走的路 - 它允许轻松访问“网格”上的某个点,前提是索引已知 - grid[y][x]

以网格形式打印它们也是微不足道的:

for i in grid:
    print i