【发布时间】:2012-12-20 20:53:19
【问题描述】:
二维列表初始化为grid=[[False]*N] *N
打印网格产生:
[[False, False, False, False], [False, False, False, False], [False, False, False, False], [False, False, False, False]]
现在我希望第 1 行和第 1 列中的元素为真。我只希望第 1 行和第 1 列中的元素为真。其他元素必须为假。
grid[0][0]=True
在我将 grid[0][0] 设置为 true 后,打印网格会产生:
[[True, False, False, False], [True, False, False, False], [True, False, False, False], [True, False, False, False]]
但是现在每一行的第一个元素都是真,但我只希望第一行的第一个元素是真。
请帮忙。我是 Python 新手。
【问题讨论】:
-
正确格式化您的代码
-
@Abhijit:这本身就是 1000 个早期 SO 问题的副本。我想知道关于 SO 的 Python 问题中有多少百分比是一遍又一遍地重复相同的 10 个基本问题?
-
@abarnert:我相信我们应该将这 1000 个较早的 SO 问题之一放在 Python 常见问题解答中
-
@Abhijit:我猜。但它已经在官方 Python 教程和参考文档中,而且我认为我从未见过解释您可以在
list上使用*而无需立即解释浅拷贝陷阱的教程,所以......你认为它会有很多好处吗?
标签: python