8

I am trying to find a way where the name of the file the program is reading will be checked if it contains any of the strings like below. I am not sure if that is the right way to go about it. The string is going to be a global variable as I have to use it later in the program

class Wordnet():

    def __init__(self):
        self.graph = Graph()
        self.filename = ''
        self.word_type = ''

    def process_file(self):
        self.filename = "noun.txt"
        self.file = open(self.filename, "r")
        return self.file, self.filename

    def check_word_type(self, filename):
        if 'noun' in filename:
            self.word_type = 'noun'
        elif 'verb' in filename:
            self.word_type = 'verb'
        elif 'vrb' in filename:
            self.word_type = 'verb'
        elif adj in filename:
            self.word_type = 'adj'
        elif adv in filename:
            self.word_type = 'adv'
        else:
            self.word_type = ''
        return self.word_type

if __name__ == '__main__':
    wordnet = Wordnet()
    my_file = wordnet.process_file()  
    print wordnet.word_type

Any help would be great

2 Answers 2

12

Try this:

def check_word_type(self, filename):
    words = ['noun','verb','vrb','adj','adv'] #I am not sure if adj and adv are variables
    self.word_type = ''
    for i in words:
        if i in filename:
            self.word_type = str(i) #just make sure its string

    return self.word_type
Sign up to request clarification or add additional context in comments.

Comments

1

You are not calling check_word_type() anywhere. Try:

def process_file(self):
    self.filename = "noun.txt"
    self.file = open(self.filename, "r")
    self.check_word_type(self, self.filename)
    return self.file, self.filename

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.