从字符串列表中查找单词

时间:2017-12-19 18:34:40

标签: string python-3.x list substring

说我有一个字符串列表

["rdfa", "gijn", "ipqd"]

并且有一个包含字符串"和"的变量,我怎样才能检查"和"在列表中?为了更清楚地将列表视为单词搜索:

rdfa
gijn
ipqd

我看到了垂直字"和",但我怎样才能检查单词"和"在列表中?找到水平单词要容易得多,但找到一个垂直单词让我感到困惑。我想我可能需要找到"和#34;的第一个字母。在列表中的任何元素中,然后我需要查找第二个字母是否与第一个字母在同一列中,以及第一个字母上方或下方的行中,以及后续字母中的相同内容(如I&#39) ; d喜欢这个适用于任何长度的单词)。但是,我不确定如何实施。我希望这个问题很明确,因为如果没有显示单词搜索就很难解释。

2 个答案:

答案 0 :(得分:2)

转换字母矩阵的纯python方式是

def transpose(l):
    return map(''.join, zip(*l))

l = ["rdfa", "gijn", "ipqd"]

if 'and' in transpose(l):
    ...

答案 1 :(得分:1)

列表元素不知道其余元素,因此您无法垂直比较它。如果您拥有的单词列表不是很大,最有效的方法是构建列表的转置,如:

np.array(your_word_list).T.tolist()

然后水平看。如果你的单词长度不一样,只需用空格填充它们。

如果您正在尝试解决单词拼图,请检查此questionthis module