检查字符串是否构成一个单词

我正在构建一个Python文本分类应用程序。在这个应用程序中,用户提供一个小句子(或一个单词),我们对他的句子进行分类。我面临的问题是如何检查他的字符串是否构成一个单词或一组单词。

用户输入的示例:

1) “asdfasdfa”

2) “This is adsfgafdga”

示例1不是一个单词,所以我想抛出一个错误,示例2也包含一个非单词字符串,所以我也要抛出一个错误。

正确的示例:

1) “Hello”

2) “This is good”

有没有办法做到这一点而不需要单词列表,或者有人知道一个可以做到这一点的API吗?


回答:

一种广泛的方法是创建一个列表并将词典单词存储在其中。首先对用户输入进行分割,使用phrase.split()从短语中单独提取每个单词。

words = phrase.split() // words : ['This', 'is', 'good'] len(words) // 单词数量 : 3 

根据短语中的单词数量运行循环,如果结果大于1。然后,只需检查单词是否在列表中即可,使用以下方法:

if "word" in dictionary_words:   print "单词可用"

你可以使用一个词典单词的XML版本代替列表,这是一个很好的选择。

对于更复杂的解决方案,你可以尝试整合像PyEnchant这样的API,它提供了一个拼写检查库。关于这方面的更多细节,你可以查看并执行pip install pyenchant并导入它。

>>> import enchant>>> help(enchant)

Related Posts

L1-L2正则化的不同系数

我想对网络的权重同时应用L1和L2正则化。然而,我找不…

使用scikit-learn的无监督方法将列表分类成不同组别,有没有办法?

我有一系列实例,每个实例都有一份列表,代表它所遵循的不…

f1_score metric in lightgbm

我想使用自定义指标f1_score来训练一个lgb模型…

通过相关系数矩阵进行特征选择

我在测试不同的算法时,如逻辑回归、高斯朴素贝叶斯、随机…

可以将机器学习库用于流式输入和输出吗?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

在TensorFlow中,queue.dequeue_up_to()方法的用途是什么?

我对这个方法感到非常困惑,特别是当我发现这个令人费解的…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注