我是 Python 的新手,因此是个问题,
所以我正在尝试实例化一个二维数组/列表,其中所有大小为 str +1 行和模式 +1 列的 false。
这是我的代码,
memo = []
for i in range(0, len(str) + 1):
memo[i] = [[False] for j in range(len(pattern) + 1)]
现在我有两个问题,
是否有更 pythonic 的方式在 1 行中执行此操作? 另外,如果我只是创建列表而不用任何东西初始化它,那么每个网格中有什么(java 相当于非初始化意味着用 false 初始化)?
最佳答案
单行代码是
memo = [[False for j in range(len(pattern) + 1)] for i in range(len(str) + 1)]
.
作为旁注,请记住,应避免使用 str
作为变量名,因为它会遮盖内置的 str
类型。
if I just create the list and dont initialize it with anything, what is there in each grid(java equivalent of non-initialization meaning initalized with false)?
没有,它只是空的。
Python 列表存储对其他对象的引用。如果您不插入对列表的任何引用,则该列表不包含任何内容。
关于python - 实例化 boolean 二维数组的理解?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39015925/