1
我有一个字符矩阵,看起来是这样的:删除字符
["AAAAAAAA",
"AAAXAAAA",
"AAAAAAAA"]
我对X的位置,数字X/Y坐标,我希望得到一个包含字符串矩阵中除x以外的所有字母,最好的方法是什么?
我有一个字符矩阵,看起来是这样的:删除字符
["AAAAAAAA",
"AAAXAAAA",
"AAAAAAAA"]
我对X的位置,数字X/Y坐标,我希望得到一个包含字符串矩阵中除x以外的所有字母,最好的方法是什么?
不是最有效的,但出发点:
>>> matrix = [
... "AAAAAAAA",
... "AAAXAAAA",
... "AAAAAAAA"]
>>> x, y = 4, 2
>>> linear = list(itertools.chain.from_iterable(matrix))
>>> del linear[x - 1 + (y - 1) * 8]
>>> ''.join(linear)
'AAAAAAAAAAAAAAAAAAAAAAA'
好吧,这里是用Python的真棒列表理解的解决方案:
coordinates = (1,3) # (line, column)
matrix = ["AAAAAAAA",
"AAAXAAAA",
"AAAAAAAA"]
matrix = [list(line) for line in matrix] # convert the strings to create a "real" matrix"
del matrix[coordinates[0]][coordinates[1]] # delete the specified element
"".join([item for line in matrix for item in line]) # flatten out the matrix and creating a string
什么做的坐标是这样的:'[1, 3]'?另外,在你的示例代码中,你期望什么输出?看起来你可以做'A'*(number_of_elements_in(矩阵) - number_of_coordinates_to_remove)'。 – mgilson
你有什么尝试?向我们展示你的尝试,即使它不是最好的方法。 –
你想要的输出是什么?一个字符串,或三个字符串的列表? – askewchan