def setup(self, filename): #read txt file #construct attr grammar_file = open(filename) line_count = 0 for line in grammar_file: line = line.strip('\n') if (line_count == 0): self.start = line.split(' ')[0] self.nonterminal = set(line.split(' ')) elif (line_count == 1): self.terminal = set(line.split(' ')) else: rule = Rule() rule.setRule(line.split(' ')) self.rule.append(rule) line_count += 1