繁体   English   中英

从字符串列表中删除字符

[英]removing characters from a list of strings

我有一个看起来像这样的字符矩阵:

["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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM