Как выполнить Python split () на языках (например, китайском), которые не используют пробелы в качестве разделителя слов?

Я хочу разбить предложение на список слов.

Для английского и европейского языков это легко, просто используйте split ()

>>> "This is a sentence.".split()
['This', 'is', 'a', 'sentence.']

Но мне также нужно иметь дело с предложениями на таких языках, как китайский, в которых не используются пробелы в качестве разделителя слов.

>>> u"这是一个句子".split()
[u'\u8fd9\u662f\u4e00\u4e2a\u53e5\u5b50']

Очевидно, что это не работает.

Как разделить такой разделитель предложение в список слов?

ОБНОВЛЕНИЕ:

Пока что ответы, кажется, предполагают, что для этого требуются методы обработки естественного языка и что границы слов в китайском языке неоднозначны. Не уверен, что понимаю почему. Границы слов в китайском кажутся мне очень определенными. Каждому китайскому слову / символу соответствует юникод и он отображается на экране как отдельное слово / символ.

Итак, откуда взялась неоднозначность. Как вы можете видеть в моем выводе на консоль Python, Python без проблем сообщает, что мое примерное предложение состоит из 5 символов:

这 - u8fd9
是 - u662f
一 - u4e00
个 - u4e2a
句 - u53e5
子 - u5b50

Итак, очевидно, что у Python нет проблем с указанием границ слова / символа. Мне просто нужны эти слова / символы в списке.

14
задан dusan 4 February 2013 в 19:40
поделиться