我正在尝试使用Python的“langdetect”库来检测数据框中的外语。
for e in food['product_name'].dropna():
if detect(e) == 'zh':
print e
我在这里尝试打印在特定列中找到的每个中文单词。
但是,有时我会收到以下错误消息:
LangDetectException: No features in text.
我了解发现数字,空格或不是单词的字符串(引用代码,邮件地址...)时会发生这种情况。
我只想抛出一个异常并相应地处理情况,但是我不知道该怎么做。这是我的尝试:
for e in food['product_name'].dropna():
if detect(e) == 'zh':
try:
print e
except LangDetectException:
pass
有人可以帮我解决这个写得不好的代码段吗?显然有问题,但是我不知道到底是什么!
最佳答案
如上面的注释中所述,检测是引发异常的原因,因此您需要将该调用包装在try
块中:
for e in food['product_name'].dropna():
try:
if detect(e) == 'zh':
print e
except LangDetectException:
pass