Привет, я начал играть с Python в эти дни, и это кажется простым, поэтому я нашел корпус в nltk в Python. Когда я попробовал
text1.concordance("Moby")
это дало мне количество предложений и отображение предложений, содержащих слово Моби, круто.
Поэтому я попытался проверить, смогу ли я найти все предложения с именами Моби и Ахав, но, к сожалению, получаю ошибки.
Я делаю что-то не так или я должен получить все предложения, содержащие оба этих имени? Есть ли другая функция от nltk, которую я должен использовать? о.о
Это, вероятно, легко, но не так уж много для меня, чтобы увидеть это... надеюсь, кто-то может помочь, спасибо.
PS: Если мне нужно написать какой-то код, пример был бы отличным. ^^
Изменить: поскольку кто-то спросил об ошибке, я тоже напишу код, который написал.
import nltk
from nltk.book import *
text1.concordance("Moby","Ahab")
дает мне ошибку:
Traceback (most recent call last):
File "<pyshell#2>", line 1, in <module>
text1.concordance('Moby','Ahab')
File "C:\Programmering\Python27\lib\site-packages\nltk\text.py", line 314, in concordance
self._concordance_index.print_concordance(word, width, lines)
File "C:\Programmering\Python27\lib\site-packages\nltk\text.py", line 174, in print_concordance
half_width = (width - len(word) - 2) / 2
TypeError: unsupported operand type(s) for -: 'str' and 'int'
Я догадался, что получу несколько совпадений, например, просто запустив:
text1.concordance("Moby")
где у меня получилось 84 спички.