का उपयोग कर एक पाठ फ़ाइल से सभी नामों को निकालने क्या यह करने का एक और अधिक प्रभावी तरीका है? मेरा कोड एक टेक्स्ट फ़ाइल पढ़ता है और सभी नामों को निकालता है।nltk
import nltk
File = open(fileName) #open file
lines = File.read() #read all lines
sentences = nltk.sent_tokenize(lines) #tokenize sentences
nouns = [] #empty to array to hold all nouns
for sentence in sentences:
for word,pos in nltk.pos_tag(nltk.word_tokenize(str(sentence))):
if (pos == 'NN' or pos == 'NNP' or pos == 'NNS' or pos == 'NNPS'):
nouns.append(word)
मैं इस कोड की समय जटिलता को कैसे कम करूं? लूप के लिए नेस्टेड का उपयोग करने से बचने का कोई तरीका है?
अग्रिम धन्यवाद!
'if pos.startswith ('एनएन') के साथ अगर स्थिति को बदलें:', 'सेट' या 'संग्रह। काउंटर' का भी उपयोग करें, सूची न रखें। और एक सूची समझ के बजाय कुछ नक्शा/कम करें। अन्यथा, 'उथली पार्सिंग', उर्फ 'चंकिंग' – alvas