我正在尝试创建一个二维矩阵,以便每个单元格都包含一个字符串列表。 矩阵维度在创建之前是已知的,我需要从一开始就访问任何元素(不是动态填充矩阵)。 => 我认为需要某种类型的空间预分配。
例如,我想要一个 2X2 矩阵:
[['A','B'] ['C'];
['d'] ['e','f','f']]
支持传统的矩阵访问操作,比如
(Matrix[2][2]).extend('d')
或
tmp = Matrix[2][2]
tmp.extend('d')
Matrix[2][2] = tmp
操作单元格内容。
如何用python实现?
最佳答案
正如你写的那样:
>>> matrix = [["str1", "str2"], ["str3"], ["str4", "str5"]]
>>> matrix
[['str1', 'str2'], ['str3'], ['str4', 'str5']]
>>> matrix[0][1]
'str2'
>>> matrix[0][1] += "someText"
>>> matrix
[['str1', 'str2someText'], ['str3'], ['str4', 'str5']]
>>> matrix[0].extend(["str6"])
>>> matrix[0]
['str1', 'str2someText', 'str6']
只需将二维矩阵视为列表的列表。其他操作也可以正常工作,例如,
>>> matrix[0].append('value')
>>> matrix[0]
[0, 0, 0, 0, 0, 'value']
>>> matrix[0].pop()
'value'
>>>
关于python - python 中的二维列表数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4064277/