मैं nltk का उपयोग कर रहा हूं लेकिन जिस समस्या का सामना कर रहा हूं वह विशेष रूप से nltk से संबंधित प्रतीत नहीं होता है। मैं एक मॉड्यूल नामित util.tokenize
जो अंदर वहाँ कुछ वर्गों रहे हैं और मैं निम्नलिखित पहली पंक्ति है:पायथन, आयात त्रुटि: नाम आयात नहीं कर सकता है AbstractLazySequence
util/tokenizer.py
from nltk.tokenize.regexp import RegexpTokenizer
...
class SentTokenizer(object):
def __init__(self, stem=False, pattern='[^\w\-\']+'):
self.alg = RegexpTokenizer(pattern, gaps=True)
def __call__(self, text):
return self.alg.tokenize(text)
....
if __name__ == '__main__':
s_t = SentTokenizer()
s_t('blah blah')
जब मैं एक और मॉड्यूल से उन वर्गों फोन, test.py
सब कुछ लगता है कहना काम करने के लिए, लेकिन tokenize.py
मॉड्यूल चलाना सीधे आयात त्रुटि का कारण बनता है।
File "tokenize.py", line 1, in <module>
...
File "Python27\lib\site-packages\nltk\corpus\reader\util.py", line 28, in <module>
from nltk.util import AbstractLazySequence, LazySubsequence, LazyConcatenation, py25
ImportError: cannot import name AbstractLazySequence
समस्या क्या हो सकती है? अन्य मॉड्यूल से बुलाए जाने पर यह क्यों काम करता है?
test.py
from util.tokenize import SentTokenizer
s_t = SentTokenizer()
print s_t('blah blah')
प्लेटफार्म विंडोज है।
प्रासंगिक कोड – CentAu
के और हिस्सों को जोड़ा गया यह भी __main__ कोड तक नहीं पहुंचता है। लाइन पर यह त्रुटि फेंकता है। मैंने और कोड जोड़ा। @grill – CentAu
क्या होता है यदि आप ऊपर शामिल कोड के साथ एक नई .py फ़ाइल बनाते हैं (इलिप्स को छोड़कर)? – grill